<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=4&amp;t=6487&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-04-02T14:27:42+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=6487&amp;mode</id>
<entry>
<author><name><![CDATA[swibno]]></name></author>
<updated>2014-04-02T14:27:42+01:00</updated>
<published>2014-04-02T14:27:42+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76731#p76731</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76731#p76731"/>
<title type="html"><![CDATA[Re: Komunikacja RS485 - protokół]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76731#p76731"><![CDATA[
Dodawanie znaków na końcu ramki nie było potrzebne. W protokole Compit C3 na końcu zawsze wysyłany jest znak '#&quot; kończący ramkę. Pochwalę się efektem etapu komunikacji ze sterownikiem. Zestaw ładnie wysyła zapytania i zbiera odpowiedzi. <br /><a href="http://forum.atnel.pl/_obrazki/o/662/9ad154d697fccfeab1cce17f5be73e34.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/662/9ad154d697fccfeab1cce17f5be73e34.jpg" alt="Obrazek" /></a><br /><br />Muszę jeszcze stworzyć kosmetyczne zabezpieczenia od zakłóceń w transmisji, przepełnienia bufora, ale tej chwili nie ma z tym żadnych problemów.<br />Kolejny krok to zapis godziny i temperatury na kartę SD, a później może przesyłanie przez Ethernet. <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br />Jeszcze raz dzięki za pomoc w rozwiązaniu problemu.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=662">swibno</a> — 2 kwi 2014, o 14:27</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2014-03-30T21:17:41+01:00</updated>
<published>2014-03-30T21:17:41+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76419#p76419</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76419#p76419"/>
<title type="html"><![CDATA[Re: Komunikacja RS485 - protokół]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76419#p76419"><![CDATA[
Do tej ramki dodaj sobie na koniec $0D$0A, czyli &quot;\r\n&quot;. Możliwe, że wymagane jest samo &quot;\r&quot;.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 30 mar 2014, o 21:17</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[swibno]]></name></author>
<updated>2014-03-30T11:25:17+01:00</updated>
<published>2014-03-30T11:25:17+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76346#p76346</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76346#p76346"/>
<title type="html"><![CDATA[Re: Komunikacja RS485 - protokół]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76346#p76346"><![CDATA[
Według instrukcji protokołu w bajcie odbiorcy wysyłamy 128+adres odbiorcy, dlatego wysyłam #138. Dziś podczas kolejnych prób nastąpił duży przełom, gdy nerwowo kilkakrotnie nacisnąłem ENTER wysyłając zapytanie. Spłynęła odpowiedź z temperaturą do terminala. Wymarzone jedenaście bajtów. Nie pojawia się jeszcze po wysłaniu każdej ramki z zapytaniem ale jest już duży sukces. Jeszcze raz dzięki za podpowiedzi zabieram się za dalsze testy.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=662">swibno</a> — 30 mar 2014, o 11:25</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2014-03-29T11:04:18+01:00</updated>
<published>2014-03-29T11:04:18+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76233#p76233</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76233#p76233"/>
<title type="html"><![CDATA[Re: Komunikacja RS485 - protokół]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76233#p76233"><![CDATA[
Może podasz w końcu co to za sterownik to może coś się dopatrzymy.<br />Upewnij się jaki adres ma ten sterownik, bo niby na początku 138 teraz piszesz adres 10, a wysyłasz 138.<br />Czy ACII, binarnie albo postaci hex to bez znaczenia w tym sensie, że na magistralę i tak zawsze idą 1 i 0. Możesz to też mieszać np.  #138T#001$5Axx#001xxx# Ważne, że cała liczba 0-255 zajmuje jeden bajt jak wysyłasz ją w postaci binarnej, bo równie dobrze można liczbę 123 wysłać jako 3 znaki ASCII &quot;123&quot; i zajmie to 3 bajty a nie 1.<br />W tym terminalu można sobie włączyć dodatkowo podgląd tego co odebrano w formacie Bin, Hex, Dec (patrz obrazek: 1) i pojawi się to w odpowiednich kolumnach (2) lub całą odpowiedź mieć od razu jako ciąg liczb w formacie Hex (3)<br /><a href="http://forum.atnel.pl/_obrazki/o/465/24f1d2592a4fae4a6148f9a9ba6bebc7.png"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/465/24f1d2592a4fae4a6148f9a9ba6bebc7.png" alt="Obrazek" /></a><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 29 mar 2014, o 11:04</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[swibno]]></name></author>
<updated>2014-03-28T19:00:28+01:00</updated>
<published>2014-03-28T19:00:28+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76187#p76187</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76187#p76187"/>
<title type="html"><![CDATA[Re: Komunikacja RS485 - protokół]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76187#p76187"><![CDATA[
Nie mogę sobie z nawiązaniem połączenia poradzić. W ustawieniach sterownik ma tylko prędkość transmisji 1200 i adres 10. Nic innego nie można zmienić.<br />Gdy odłączę przejściówkę RS485 i zewrę w złączu RS232 RX oraz TX w terminalu wysyłam makro: #138#084#001#090#120#120#001#120#120#120#035<br />w oknie nadane dane pojawia się: ŠTZxxxxx#<br />w oknie odebrane dane pojawia się: TZxxxxx#<br />Jedenaście bajtów na liczniku TX ale po podłączeniu przejściówki cisza na magistrali.<br />Zastanawia mnie rodzaj pola w ramce danych: binarne i ASCII. Nie rozumiem różnicy w sposobie wysyłania binarnie i ASCII. Ja wysyłam wszystkie pola jednakowo jako kod ascii i może tu jest błąd.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=662">swibno</a> — 28 mar 2014, o 19:00</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2014-03-27T10:56:49+01:00</updated>
<published>2014-03-27T10:56:49+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76018#p76018</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76018#p76018"/>
<title type="html"><![CDATA[Re: Komunikacja RS485 - protokół]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76018#p76018"><![CDATA[
<div class="quotetitle">swibno napisał(a):</div><div class="quotecontent"><br />Idealne żeby na początek żeby ustanowić połączenie<br /></div> To podstawa.<br />Moim zdaniem twoja ramka jest poprawna. Może jest możliwość by to urządzenie co jakiś czas nadawało swoją ramkę bez pytania.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 27 mar 2014, o 10:56</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[swibno]]></name></author>
<updated>2014-03-26T23:05:17+01:00</updated>
<published>2014-03-26T23:05:17+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76002#p76002</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76002#p76002"/>
<title type="html"><![CDATA[Re: Komunikacja RS485 - protokół]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=76002#p76002"><![CDATA[
Dzięki za wskazówki. Naprawdę jestem wdzięczny za każdą radę która popycha mnie do przodu. Układ już połączyłem i pobrałem ten program. Idealne żeby na początek żeby ustanowić połączenie. Jestem na etapie zapoznawania się z programem. Wiem jak wysyłać już znaki ASCII. Nie wiem czy dobrze wysyłam liczby binarne, bo np. adres odbiorcy dziesiętnie &quot;138&quot; zamieniam na liczbę szesnastkową &quot;8A&quot; i wysyłam tak samo jak znak ASCII. Jedenaście bajtów szesnastkowo, makro: $8A$54$01$5A$78$78$01$78$78$78$23. Niestety jeszcze nie mam odpowiedzi w terminalu. Ramka nadawcza wygląda tak (sonda pomiędzy A i B):<br /><a href="http://forum.atnel.pl/_obrazki/o/662/59f8de92b60a2e116758ad26eab9b363.JPG"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/662/59f8de92b60a2e116758ad26eab9b363.JPG" alt="Obrazek" /></a><br /><br />W mojej instrukcji sterownika nie znalazłem nic o kontroli parzystości oraz bicie stopu, to ten ten sam protokół więc takie same parametry ustawiam.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=662">swibno</a> — 26 mar 2014, o 23:05</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Krauser]]></name></author>
<updated>2014-03-26T10:40:23+01:00</updated>
<published>2014-03-26T10:40:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=75832#p75832</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=75832#p75832"/>
<title type="html"><![CDATA[Re: Komunikacja RS485 - protokół]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=75832#p75832"><![CDATA[
1. Tak.<br />2. Nie. Informacja jest w instrukcji np. dla R350 podają: długość znaku - 8 bitów, brak kontroli parzystości, 1,5 bitu stopu<br />3. Lepiej dopytać. Najlepiej na początek odstawić mikrokontroler i skomunikować się używając PC, przejściówki USB-RS485 i programu, gdzie można pod przycisk podpiąć złożoną ramkę np. Bray Terminal<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=465">Krauser</a> — 26 mar 2014, o 10:40</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[swibno]]></name></author>
<updated>2014-03-25T14:08:19+01:00</updated>
<published>2014-03-25T14:08:19+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=75702#p75702</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=75702#p75702"/>
<title type="html"><![CDATA[Komunikacja RS485 - protokół]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=6487&amp;p=75702#p75702"><![CDATA[
Postanowiłem poszerzyć wiedzę na temat komunikacji szeregowej. Przerobiłem już lekcję UART z niebieskiej książki. Chciałbym teraz wykorzystać ten przykład w praktyce stąd moje kilka pytań. Mam nadzieję że znajdę tu odpowiedzi. Mam zainstalowany na dachu kolektor solarny. Jego sterownik posiada złącze do transmisji szeregowej RS485(piny A oraz B). Przymierzam się do stworzenia monitoringu na początek podłączenie ATB1.04 i odczytywanie aktualnej temperatury solara, a w przyszłości może innych parametrów oraz wysyłanie na serwer www z wizualizacją. To na dziś plany, bo nie czuję się jeszcze na tyle mocny. Po rozmowach telefonicznych z producentem sterownika dowiedziałem się, że łącze szeregowe może służyć do wysyłania parametrów, ale sterownik wykorzystuje własny protokół komunikacyjny COMPIT C3. Otrzymałem budowę ramki zapytania o temperaturę. Składa się ona z 11 bajtów. Wygląda ona następująco:<br /><a href="http://forum.atnel.pl/_obrazki/o/662/7989f0bccd25c4664facfaae681f5434.JPG"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/662/7989f0bccd25c4664facfaae681f5434.JPG" alt="Obrazek" /></a><br /><br />1. Czy podłączenie będzie poprawne dla dwóch urządzeń na magistrali? Sterownik z ATB połączony dwoma przewodami A-A oraz B-B. Zestaw ATB1.04 z zapiętą zworką TRM (terminator 120ohm na końcu linii), złącza przejściówki RS485 zestawu podłączone:  TX -&gt; PD0(RXD), RX -&gt; PD1(TXD), DE-&gt; PD2. Do złącz w sterowniku podpięty również rezystor 120 ohm, ze względu na drugi koniec magistrali.<br /><br />2. Zastanawiam się nad inicjalizacją komunikacji UART w programie. Prędkość można ustawić w sterowniku od 1200 do 9600, ale czy dowolnie mogę zadeklarować ilość bitów parzystości oraz stopu? W opisie protokołu nie mam informacji na ten temat.<br /><br />3. Czy dobrze zakładam że wysyłając kolejno po sobie 11 bajtów zawierających zapytanie powinienem po tym w buforze odbiorczym odczytać jedenaście bajtów z odpowiedzią ze sterownika?<br /><br />Dzięki za podpowiedzi bo temat komunikacji dla mnie jest wyjątkowo trudny.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=662">swibno</a> — 25 mar 2014, o 14:08</p><hr />
]]></content>
</entry>
</feed>