Horter&Kalb Analog_Output-Karte mit Codesys

B_Hag

Level-1
Beiträge
6
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Moin zusammen,

ich möchte eine Variable über eine I2HAA-Karte (analog Output) ausgeben.
Mit dem Beispielprogramm vom Hersteller hat auch alles gut funktioniert und die digitalen Ein- und Ausgabekarten (I2HA und I2HE) funktionieren auch.
Wenn ich jedoch das Potentiometer aus der Webvisu lösche und den Ausgabewert direkt in meinem Programm verändern möchte, wird zwar die Variable geändert, aber es ändert sich nichts am Ausgang.
Habe ich eine falsche Variable gewählt, oder etwas beim Aufruf falsch gemacht?
Die Firma Horter konnte mir nicht helfen und ich weiß nicht mehr weiter. Jetzt hoffe ich, dass hier Jemand schon Erfahrung damit hat.
Code:
VAR
I2HAA : Horter_Kalb_Raspi_Support.I2HAA_Analogue_Outputs;
iKopf        : UINT    := 100;
END_VAR


IF I2HE_Digital_Inputs_IO_driver_Instance.I2HE.byInput.2 = TRUE AND iKopf >40 THEN    
  iKopf := iKopf - 1;
  I2HAA_Analogue_Outputs_IO_driver_Instance.I2HAA.awOutput[1] := iKopf;
END_IF
 
Hab weiter herumprobiert bis ich endlich erfolgreich war. Falls nochmal Jemand das gleiche Problem haben sollte: 8)

Code:
VAR
iWert: UINT;
awAnaOut: ARRAY [0..3] OF WORD 
END_VAR
VAR_IN_OUT
I2HAA : Horter_Kalb_Raspi_Support.I2HAA_Analogue_Outputs;
END_VAR

PRG
awAnaOut[1] := iWert;
I2HAA_Analogue_Outputs_IO_driver_Instance.I2HAA(usiAddress := 88, awOutput:= awAnaOut);

usiAddress ist die dezimale Adresse der Karte auf dem I2C-Bus. Der analoge Ausgangswert iWert wird nun auf dem Ausgabekanal 1 ausgegeben.

Für Verbesserungsvorschläge bin ich auch weiterhin dankbar ;)
 
Zurück
Oben