Forum: Mikrocontroller und Digitale Elektronik Request/ Response Arduino über RS232 an Device funktioniert nicht


von Wi M. (wima)



Lesenswert?

Hallo!!!

ich arbeitet gerade an einem Projekt bei dem ich nicht wirklich weiter 
komme...

Ich möchte Daten aus einem Device (Xtender Wechselrichter) über einen 
RS232 Schnittstelle mit einem Arduino Uno auslesen.

Das Auslesen der unterschiedlichen Daten (über unterschiedliche 
objekt_id aufrufbar) funktioniert über den PC problemlos (send Request, 
receive Response). Jedoch mag mir die Initialisierung der Seriellen 
Schnittstelle am Arduino UNO nicht gelingen.

Ich habe die RS232- Schnittstelle über einen Seriellen Adapter, welcher 
mit einen MAX232 Pegelwandler versehen ist, mit dem Arduino verbunden.

Jetzt habe ich versucht, über die Library SoftwareSerial.h einen zweiten 
SeriellenPort zu initialisieren, so dass ich über diesen mit meinem 
Xtender kommunizieren kann, den bereits im Arduino Uno enthaltenen 
Seriellen Port würde ich dann für Monitorausgaben verwenden.

Jetzt scheitere ich jedoch an der Initialisierung der Schnittstelle. Ich 
habe die Baudrate, sowie Start und Stopbits und die Anfrage 
(Request)folgendermaßen gesetzt:
1
#include <SoftwareSerial.h>
2
3
#define rxPin 10
4
#define txPin 11
5
6
SoftwareSerial myXtender(rxPin, txPin); // RX, TX
7
8
//Request line 26bytes, Hexadecimal
9
10
byte GetData[] = {0xAA, 0x00, 0x01000000, 0x65000000, 0x0A00, 0x6F71,0x00,0x01,0x0100,0xB80B0000,0x0100,0xC590};
11
int i = 0;
12
 
13
void setup()  
14
{
15
  // define pin modes for tx, rx:
16
  pinMode(rxPin, INPUT);
17
  pinMode(txPin, OUTPUT);
18
  // Open serial communications and wait for port to open:
19
  // Set USART_Configurations: 38400bps, 1start bit, 8bit of data
20
  // 1 parity bit, even parity, 1 stop bit, 
21
  Serial.begin(38400,SERIAL_8E1);
22
23
  // set the data rate for the SoftwareSerial port
24
  myXtender.begin(38400);
25
}

jeodoch kann ich so keine Daten von meinem Device erhalten.

Ich bin mir auch unsicher, ob ich die Request bzw. die Bytes im Request 
richtig sende...

Als Anhang habe ich das Serielle Protocol für den Xtender eingefügt.

Ich BEDANKE mich für HILFE!!!

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.