COM Port Problem

Hallo,

also ich hab mir hier den Ultraschallsensor mit Comport

Über Hyperterminal wenn ich 12000 als Text Tippe bekomme ich einwahnfrei ein Ergebniss.

Jedoch weiß ich nun nicht mehr weiter

  1. Ich habe nun einen Comport Angelegt
  2. eine Variable angelegt (Entfernung)
  3. Einen Cutter (Übergeordnete Instanz „Com3“)
  4. eine RegisterVariable Angelegt (Übergeordnete Instanz „Cutter“)

Ein Skribt das heißt Start und eines das heißt Ergebniss. Und nun?

Im Start Skribt steht
COMPort_SendText(10426 /[Serial Port]/, 12000 );

Im Ergeniss Skribt?

???

Kann mir jemand helfen?

Danke
Gruß
Christian

Hi Christian,

COMPort_SendText(10426 /*[Serial Port]*/, "12000");

sollte Dein Problem lösen.

mfg

BerndJ

Hallo Christian,

der Registervariable musst Du das Script zuweisen. Folglich heisst dann der Sendebefehl. RegVar_Sendtext.

Also so.

RegVar_SendText(xxxx/*[Regvar]*/, 12000); 

xxxx = InstanzID der RegVar.

Hallo,

Wenn du den Ultraschallsensor von ICPlan meinst dann musst du die Befehle getrennt rübersenden und min eine pause von 100 ms geben. Die antwort kommt dann über RegisterV. rein.

COMPort_SendText(33763 /*[ultraschallsensor fuer zisterne]*/, "1");
IPS_Sleep(150);
COMPort_SendText(33763 /*[ultraschallsensor fuer zisterne]*/, "2");
IPS_Sleep(150);
COMPort_SendText(33763 /*[ultraschallsensor fuer zisterne]*/, "0");
IPS_Sleep(150);
COMPort_SendText(33763 /*[ultraschallsensor fuer zisterne]*/, "0");
IPS_Sleep(150);
COMPort_SendText(33763 /*[ultraschallsensor fuer zisterne]*/, "0");

Gruß
Boris

Das wäre zb. ein Ereignis Skript für die RegisterV.
Ich schreibe den Wert wo er misst in eine Variable!

$buf = RegVar_GetBuffer(32902 /*[.steuerung\ultraschall\Register Variable]*/);
$buf .= $IPS_VALUE; //konkatieren
SetValueString(54682 /*[.steuerung\ultraschall\com_port_daten]*/,$buf);