<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent posts to Bits zählen über Modbus TCP</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/4881cfaca4/" rel="alternate"/><link href="https://forge.codesys.com/forge/talk/Engineering/thread/4881cfaca4/feed.atom" rel="self"/><id>https://forge.codesys.com/forge/talk/Engineering/thread/4881cfaca4/</id><updated>2020-02-27T14:21:06.929000Z</updated><subtitle>Recent posts to Bits zählen über Modbus TCP</subtitle><entry><title>Bits zählen über Modbus TCP</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/4881cfaca4/?limit=25#8481" rel="alternate"/><published>2020-02-27T14:21:06.929000Z</published><updated>2020-02-27T14:21:06.929000Z</updated><author><name>CodesysAm</name><uri>https://forge.codesys.com/u/codesysam/</uri></author><id>https://forge.codesys.com4c3dc2c0fa2d4f1a1850ee202d0340234f88de71</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Dear scott_cunningham,&lt;/p&gt;
&lt;p&gt;first iam very sorry for the wrong post in the wrong forum.&lt;br/&gt;
Your solution works well !   &lt;/p&gt;
&lt;p&gt;Thank you very much.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Bits zählen über Modbus TCP</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/4881cfaca4/?limit=25#15bc" rel="alternate"/><published>2020-02-27T14:21:06.529000Z</published><updated>2020-02-27T14:21:06.529000Z</updated><author><name>dFx</name><uri>https://forge.codesys.com/u/dfx/</uri></author><id>https://forge.codesys.com8858914aa6e7d1569f257488792f2bc45b4596ac</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;mybad.&lt;/p&gt;
&lt;p&gt;I beg your slice is the best solution as of now.&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Bits zählen über Modbus TCP</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/4881cfaca4/?limit=25#0d10" rel="alternate"/><published>2020-02-27T14:21:06.119000Z</published><updated>2020-02-27T14:21:06.119000Z</updated><author><name>Anonymous</name><uri>https://forge.codesys.com/u/*anonymous/</uri></author><id>https://forge.codesys.com469d7316fec07d5ac286f5aa09748d830f0c0cb6</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;em&gt;Originally created by:&lt;/em&gt; scott_cunningham&lt;/p&gt;
&lt;p&gt;@ dFx - I don't see how your code can compile/work.&lt;/p&gt;
&lt;p&gt;BIT can only be used in structure, not array:&lt;/p&gt;
&lt;p&gt;At least through CoDeSys 3.5.12, help states BIT datatype can only be used with STRUCTUREs.&lt;/p&gt;
&lt;p&gt;&lt;img alt="IMG: array" rel="nofollow" src="https://forum.codesys.com//download/file.php?id=4396"/&gt;&lt;/p&gt;
&lt;p&gt;&lt;img alt="IMG: bit" rel="nofollow" src="https://forum.codesys.com//download/file.php?id=4398"/&gt;&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Bits zählen über Modbus TCP</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/4881cfaca4/?limit=25#4e39" rel="alternate"/><published>2020-02-27T14:21:05.715000Z</published><updated>2020-02-27T14:21:05.715000Z</updated><author><name>dFx</name><uri>https://forge.codesys.com/u/dfx/</uri></author><id>https://forge.codesys.com89d414277f1e5eae169274df7b8e297759a5f0c0</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Following is wrong&lt;/p&gt;
&lt;p&gt;&lt;span style="color: 50%;"&gt;You could either use a UNION datatype, using a word and an array of bits (not bool).&lt;br/&gt;
This way you could achieve your nice indexed loop.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;So, assuming IN_DIAG_ID is an array of your union :&lt;br/&gt;
&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Bits zählen über Modbus TCP</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/4881cfaca4/?limit=25#d2d0" rel="alternate"/><published>2020-02-27T14:21:04.478000Z</published><updated>2020-02-27T14:21:04.478000Z</updated><author><name>Anonymous</name><uri>https://forge.codesys.com/u/*anonymous/</uri></author><id>https://forge.codesys.com09772d227878aaf1fb6c1fcb82d102ff399a7536</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;em&gt;Originally created by:&lt;/em&gt; scott_cunningham&lt;/p&gt;
&lt;p&gt;Bit access by a variable is not supported.  Try this instead:&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="k"&gt;FOR&lt;/span&gt; &lt;span class="nv"&gt;i&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="nv"&gt;TO&lt;/span&gt; &lt;span class="mi"&gt;99&lt;/span&gt; &lt;span class="nv"&gt;BY&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="k"&gt;DO&lt;/span&gt;
   &lt;span class="nv"&gt;Temp&lt;/span&gt; :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;IN_DIAG_ID&lt;/span&gt;[&lt;span class="nv"&gt;i&lt;/span&gt;]&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="k"&gt;FOR&lt;/span&gt; &lt;span class="nv"&gt;j&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="nv"&gt;TO&lt;/span&gt; &lt;span class="mi"&gt;15&lt;/span&gt; &lt;span class="nv"&gt;BY&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt; &lt;span class="k"&gt;DO&lt;/span&gt;
      &lt;span class="k"&gt;IF&lt;/span&gt; &lt;span class="nv"&gt;Temp&lt;/span&gt;.&lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;TRUE&lt;/span&gt; &lt;span class="nv"&gt;AND&lt;/span&gt; &lt;span class="nv"&gt;safety_repeat&lt;/span&gt;[&lt;span class="nv"&gt;i&lt;/span&gt;,&lt;span class="nv"&gt;j&lt;/span&gt;] &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt; &lt;span class="k"&gt;THEN&lt;/span&gt;
         &lt;span class="nv"&gt;safety_repeat&lt;/span&gt;[&lt;span class="nv"&gt;i&lt;/span&gt;,&lt;span class="nv"&gt;j&lt;/span&gt;] :&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
         &lt;span class="k"&gt;EXIT&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
      &lt;span class="nv"&gt;END_IF&lt;/span&gt;
      &lt;span class="nv"&gt;Temp&lt;/span&gt;:&lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nv"&gt;SHR&lt;/span&gt;&lt;span class="ss"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;Temp&lt;/span&gt;,&lt;span class="mi"&gt;1&lt;/span&gt;&lt;span class="ss"&gt;)&lt;/span&gt;&lt;span class="c1"&gt;;&lt;/span&gt;
   &lt;span class="nv"&gt;END_FOR&lt;/span&gt;
&lt;span class="nv"&gt;END_FOR&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Not tested - I answered while traveling!&lt;/p&gt;&lt;/div&gt;</summary></entry><entry><title>Bits zählen über Modbus TCP</title><link href="https://forge.codesys.com/forge/talk/Engineering/thread/4881cfaca4/?limit=25#885a" rel="alternate"/><published>2020-02-27T14:21:04.049000Z</published><updated>2020-02-27T14:21:04.049000Z</updated><author><name>CodesysAm</name><uri>https://forge.codesys.com/u/codesysam/</uri></author><id>https://forge.codesys.com242bcc90c8a3a03dacd6a987d66834c9cf9705b2</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;p&gt;Guten Abend liebe Community,&lt;/p&gt;
&lt;p&gt;ich hab ein klein großes Problem. Es geht darum ,dass ich über Codesys eine Tabelle erstellen muss.&lt;br/&gt;
Die Kommunikation läuft über MODBUS TCP und ich müsste die channel so wie bei bits hochzählen und auf TRUE abfragen. Aber es kommt immer der Fehler: 'Bitzugriff benötigt ein Literal oder eine symbolische ganzzahlige Konstante'.&lt;br/&gt;
Mein Programmteil sieht im moment so aus:&lt;br/&gt;
FOR i:= 0 TO 99 BY 1 DO&lt;br/&gt;
    FOR j:= 0 TO 15 BY 1 DO&lt;br/&gt;
        IN_DIAG_ID&lt;span&gt;[i]&lt;/span&gt;.j;&lt;br/&gt;
        IF IN_DIAG_ID&lt;span&gt;[i]&lt;/span&gt;.j = TRUE AND safety_repeat&lt;span&gt;[i,j]&lt;/span&gt; = 0 THEN&lt;br/&gt;
        safety_repeat&lt;span&gt;[i,j]&lt;/span&gt; := 1;&lt;br/&gt;
        EXIT;&lt;br/&gt;
        END_IF&lt;br/&gt;
    END_FOR&lt;br/&gt;
 END_FOR&lt;br/&gt;
über Hilfe wäre ich sehr dankbar.&lt;/p&gt;
&lt;p&gt;Schönen Abend noch &lt;/p&gt;
&lt;p&gt;MfG&lt;/p&gt;&lt;/div&gt;</summary></entry></feed>