Registrieren    Anmelden    Forum    Suche    FAQ

Foren-Übersicht » Alarm Modem Projektierung » TiXML




Ein neues Thema erstellen Auf das Thema antworten  [ 39 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3
Autor Nachricht
 Betreff des Beitrags:
 Beitrag Verfasst: Di Mai 29, 2007 3:58 pm 
Tixi-Support-Team

Registriert: Mo Jul 11, 2005 5:50 pm
Beiträge: 1351
Wohnort: Berlin
Dann bitte mal ein EventState anlegen, welches mit der Prozessvariable verknüpft ist.

[<SetConfig _="PROCCFG" ver="y">
<EventStates>

<DevID_STATE>
<Enabled _="TRUE"/>
<ProcessVar _="/Process/PV/DevID"/>
<Event _="DevID"/>
</DevID_STATE>

</EventStates>
</SetConfig>]

_________________
Tixi Support Team

E-Mail-Support, Mo-Fr, 9:00 - 17:00: Tixi-Support@tixi.com
techn. Hotline, Mo-Fr, 9:00 - 12:00 und 13:00 - 17:00: 0900-100 90 11 für 2€/min


Nach oben 
   
Mit Zitat antworten  
 Betreff des Beitrags:
 Beitrag Verfasst: Di Mai 29, 2007 3:52 pm 
Alter Hase

Registriert: Mi Apr 11, 2007 12:21 pm
Beiträge: 71
Also ich habe die Änderungen in den ProzessVariablen wie folgt vorgenommen:

[<SetConfig _="PROCCFG" ver="y">
<ProcessVars>

<DevID>
<Value>
<LD _="/Process/Bus1/Device_0/DevID"/>
<ST _="/Process/Bus1/Device_0/Var1"/>
</Value>
</DevID>

</ProcessVars>
</SetConfig>]

Und die External sieht so:

[<SetConfig _="PROCCFG" ver="y">
<External>
<Bus _="COM2" protocol="ABB,BIN" type="master" baud="1200"
handshake="RTSDTRPower" format="8O1" >
<Device _="0" Name="FlowMeter1" Pollrate="10s">
<UniqueID _="Byte" acc="W"
Request="FF FF FF FF FF 02 %0% 00 00 %C%"
CStart="5" CSum="XOR" ResTime="500ms" CharTime="300ms"
ErrDetect="00" ErrDetectOp="NOT" ErrDetectPos="9" ErrPos="9"
ErrType="Byte" def="0x80" Endian="big" simpleType="Uint8" />
<State _="Byte" acc="R" def="0" ErrType="None" Pos="10" />
<DevType _="Byte" acc="R" def="0" Pos="11" />
<ManfID _="Byte" acc="R" def="0" Pos="12" />
<ManfDefType _="Byte" acc="R" def="0" Pos="13" />
<UCRev _="Byte" acc="R" def="0" Pos="14" />
<TrRev _="Byte" acc="R" def="0" Pos="15" />
<SWRev _="Byte" acc="R" def="0" Pos="16" />
<HWRev _="Byte" acc="R" def="0" Pos="17" />
<DevID _="Byte" acc="R" def="0" Pos="21" />



<Kom3DF _="Float" acc="R" Endian="big"
Request="FF FF FF FF FF 82 92 08 00 00 %1% 03 00 %C%"
CStart="5" CSum="XOR" Pos="20"
ResTime="500ms" CharTime="300ms"/>
<Var1 _="Byte" acc="W" />

Leider wird der Wert der Variablen DevID nicht in die Variable Var1 übernommen. Zumindest wird der der Wert nicht in den Request eingetragen.

Ab der Stelle wo der Wert eingefügt werden soll, wird einfach das folgende Byte des Request geschrieben. Ich kann mir den Request anzeigen lassen, der wie folgt aussieht:

|FF FF FF FF FF|82|92 08 00 00 03|00|1B|

Das 5.Byte im Adressfeld mit dem Wert "03" ist eigentlich das Kommando 3 und sollte ein Byte später stehen, und der Wert von DevID an der Stelle.


Nach oben 
   
Mit Zitat antworten  
 Betreff des Beitrags:
 Beitrag Verfasst: Di Mai 29, 2007 3:24 pm 
Tixi-Support-Team

Registriert: Mo Jul 11, 2005 5:50 pm
Beiträge: 1351
Wohnort: Berlin
In der External ist keine weitere Änderung notwendig, Sie müssen nur in Ihrem Beispiel das def="DevID" entfernen.
In die Datenbank der Prozessvariablen muss weiterhin das oben angegebene Beispiel kopiert werden.

Eigentlich sollte das ausreichen, wenn nicht, bitte nochmal melden.

_________________
Tixi Support Team

E-Mail-Support, Mo-Fr, 9:00 - 17:00: Tixi-Support@tixi.com
techn. Hotline, Mo-Fr, 9:00 - 12:00 und 13:00 - 17:00: 0900-100 90 11 für 2€/min


Nach oben 
   
Mit Zitat antworten  
 Betreff des Beitrags:
 Beitrag Verfasst: Di Mai 29, 2007 3:15 pm 
Alter Hase

Registriert: Mi Apr 11, 2007 12:21 pm
Beiträge: 71
Können Sie mir auch sagen, wie die Anweisung in der External auszusehen hat bzw. ob an anderer Stelle im Programm noch Änderungen vorzunehmen sind.


Nach oben 
   
Mit Zitat antworten  
 Betreff des Beitrags: Re: Variablenwert übergeben
 Beitrag Verfasst: Mi Mai 16, 2007 10:53 am 
Tixi-Support-Team

Registriert: Mo Jul 11, 2005 5:50 pm
Beiträge: 1351
Wohnort: Berlin
Es gibt doch eine Lösung: :D
Sie müssen den Wert von DevID, welchen Sie beim ersten Request erhalten, über eine Prozessvariable in die Variable Var1 kopieren, welche ja als Teil des zweiten Requests (%1%) verwendet wird.

Die Prozessvariable erzeugen Sie in der ProcessVars Datenbank:

[<SetConfig _="PROCCFG" ver="y">
<ProcessVars>
<DevID>
<Value>
<LD _="/Process/Bus1/Device_0/DevID"/>
<ST _="/Process/Bus1/Device_0/Var1"/>
</Value>
</DevID>
</ProcessVars>
</SetConfig>]

_________________
Tixi Support Team

E-Mail-Support, Mo-Fr, 9:00 - 17:00: Tixi-Support@tixi.com
techn. Hotline, Mo-Fr, 9:00 - 12:00 und 13:00 - 17:00: 0900-100 90 11 für 2€/min


Nach oben 
   
Mit Zitat antworten  
 Betreff des Beitrags:
 Beitrag Verfasst: Mo Mai 14, 2007 7:37 am 
Alter Hase

Registriert: Mi Apr 11, 2007 12:21 pm
Beiträge: 71
Mit dem ersten Request (Commando 0) wird unter anderem die Geräteadresse (DevID) ausgelesen. Da die Geräteadresse verändert werden kann, sollte sie permanent abgefragt.
Mit jedem folgenden Request sollen Messgrössen die das Gerät erfasst, ausgelesen werden. Dazu werden weitere Requests an das Gerät gesendet (Commando 3). Damit aber der Request ankommt, muss die Geräteadresse in das Adressfeld des Request eingebaut werden. Sollte nun aber jemand die Geräteadresse verändern, soll das erkannt werden und eben im Adressfeld des zu sendenden Requests mit übernommen werden.


Nach oben 
   
Mit Zitat antworten  
 Betreff des Beitrags: Re: Variablenwert übergeben
 Beitrag Verfasst: Sa Mai 12, 2007 7:44 am 
Tixi-Vetriebs-Team

Registriert: Do Jul 14, 2005 9:19 am
Beiträge: 29
Wohnort: Berlin
Mich würde interessieren, was Sie hier machen wollen.
Können Sie das genauer beschreiben, vielleicht gibt es ja andere Lösungen.

hema0077 hat geschrieben:
Ich sende einen Request um gerätespezifische Informationen auszulesen.

<UniqueID _="Byte" acc="W"
Request="FF FF FF FF FF 02 %0% 00 00 %C%"
CStart="5" CSum="XOR" ResTime="500ms" CharTime="300ms"
ErrDetect="00" ErrDetectOp="NOT" ErrDetectPos="9" ErrPos="9"
ErrType="Byte" def="0x80" Endian="big" simpleType="Uint8" />
<State _="Byte" acc="R" def="0" ErrType="None" Pos="10" />
<DevType _="Byte" acc="R" def="0" Pos="11" />
<ManfID _="Byte" acc="R" def="0" Pos="12" />
<ManfDefType _="Byte" acc="R" def="0" Pos="13" />
<UCRev _="Byte" acc="R" def="0" Pos="14" />
<TrRev _="Byte" acc="R" def="0" Pos="15" />
<SWRev _="Byte" acc="R" def="0" Pos="16" />
<HWRev _="Byte" acc="R" def="0" Pos="17" />
<DevID _="Byte" acc="R" def="0" Pos="21" />

Im nächsten Request soll nun der Wert aus der Variablen "DevID" mit eingebaut werden.

<Kom3DF _="Float" acc="R" Endian="big"
Request="FF FF FF FF FF 82 92 08 00 00 %1% 03 00 %C%"
CStart="5" CSum="XOR" Pos="20"
ResTime="500ms" CharTime="300ms"/>
<Var1 _="Byte" acc="W" def="DevID" />

Ich weiss das die Anweisung def="DevID" nicht funktioniert. Es soll nur darauf verweisen, wo der Variablenwert in diesem Request eingesetzt werden soll.

Können Sie mir sagen wie ich den Wert von der Variablen "DevID" an die Stelle des Platzhalters setzen kann.

_________________
Tixi Vertriebs-Team

Vertriebs-Anfragen bitte an Info-D@Tixi.Com


Nach oben 
   
Mit Zitat antworten  
 Betreff des Beitrags:
 Beitrag Verfasst: Fr Mai 11, 2007 10:00 am 
Tixi-Support-Team

Registriert: Mo Jul 11, 2005 5:50 pm
Beiträge: 1351
Wohnort: Berlin
Sorry, da müssen wir ausnahmsweise vorerst einmal passen. Die External wird beim Start einmalig eingelesen, und kann daher nicht dynamisch verändert werden.

Falls es um ein größeres Projekt geht, kann sowas ggf. über einen kostenpflichtigen Entwicklungsauftrag (Mail an Vertrieb) realisiert werden.

_________________
Tixi Support Team

E-Mail-Support, Mo-Fr, 9:00 - 17:00: Tixi-Support@tixi.com
techn. Hotline, Mo-Fr, 9:00 - 12:00 und 13:00 - 17:00: 0900-100 90 11 für 2€/min


Nach oben 
   
Mit Zitat antworten  
 Betreff des Beitrags: Variablenwert übergeben
 Beitrag Verfasst: Fr Mai 11, 2007 9:44 am 
Alter Hase

Registriert: Mi Apr 11, 2007 12:21 pm
Beiträge: 71
Ich sende einen Request um gerätespezifische Informationen auszulesen.

<UniqueID _="Byte" acc="W"
Request="FF FF FF FF FF 02 %0% 00 00 %C%"
CStart="5" CSum="XOR" ResTime="500ms" CharTime="300ms"
ErrDetect="00" ErrDetectOp="NOT" ErrDetectPos="9" ErrPos="9"
ErrType="Byte" def="0x80" Endian="big" simpleType="Uint8" />
<State _="Byte" acc="R" def="0" ErrType="None" Pos="10" />
<DevType _="Byte" acc="R" def="0" Pos="11" />
<ManfID _="Byte" acc="R" def="0" Pos="12" />
<ManfDefType _="Byte" acc="R" def="0" Pos="13" />
<UCRev _="Byte" acc="R" def="0" Pos="14" />
<TrRev _="Byte" acc="R" def="0" Pos="15" />
<SWRev _="Byte" acc="R" def="0" Pos="16" />
<HWRev _="Byte" acc="R" def="0" Pos="17" />
<DevID _="Byte" acc="R" def="0" Pos="21" />

Im nächsten Request soll nun der Wert aus der Variablen "DevID" mit eingebaut werden.

<Kom3DF _="Float" acc="R" Endian="big"
Request="FF FF FF FF FF 82 92 08 00 00 %1% 03 00 %C%"
CStart="5" CSum="XOR" Pos="20"
ResTime="500ms" CharTime="300ms"/>
<Var1 _="Byte" acc="W" def="DevID" />

Ich weiss das die Anweisung def="DevID" nicht funktioniert. Es soll nur darauf verweisen, wo der Variablenwert in diesem Request eingesetzt werden soll.

Können Sie mir sagen wie ich den Wert von der Variablen "DevID" an die Stelle des Platzhalters setzen kann.


Nach oben 
   
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
 
Ein neues Thema erstellen Auf das Thema antworten  [ 39 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3

Foren-Übersicht » Alarm Modem Projektierung » TiXML


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 15 Gäste

 
 

 
Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
Deutsche Übersetzung durch phpBB.de