Tartalmi kivonat
RS485 hálózati elem (DS2K) Firmware verzió v1.11 Bemutatás Ez az áramkör az RS485 adatkommunikációs rendszerrel megvalósított adatgyűjtéshez/vezérléshez kialakított hálózati elem. Feladata a PC-től távolabb eső helyen lévő érzékelési/vezérlési feladat megoldása, és az információ továbbítása a PC felé. Az DS2K konkrét feladata a levegő hőmérsékétének, páratartalmának és 2 további hőmérséklet mérése és továbbítása a PC felé, illetve 2 relével vezérlés feladat megvalósítása. Tulajdonságok ♦ A DS2 speciális változata kazánhoz (DS2K) ♦ 3 db hőmérséklet szenzor (DS18B20) ♦ 1 db páratartalom szenzor ♦ 2 db relés kimenet ♦ 1 db digitális bemenet ♦ Hőmérséklet határ jelzése LED-ekkel ♦ A kimenetek állapotát LED-ek jelzik ♦ 2 eres, half-duplex 1 RS485 kommunikáció a PC felé ♦ Az RS485 kommunikáció sebessége 57600 Baud ♦ A kommunikáció státuszát LED-ek mutatják ♦ Az eszköz címe 1 és
31 között beállítható ♦ Az RS485 kommunikáció sebessége 57600 Baud ♦ Az RS485-el áthidalható távolság 1200 méter ♦ Beépített vonallezáró (terminator) DIP kapcsolóval választhatóan ♦ Tápellátás az RS485-ös buszon biztosított 24V-ról történik ♦ FC parancsok szimulálása ♦ Watchdog a PC-vel való kapcsolat figyelésére, relék elengedése kapcsolat megszakadása esetén ♦ A felszerelés helyének tárolása az EEPROM-ban ♦ EEPROM/SRAM tartalom kiolvasható (diagnosztika) 1 Kétirányú kapcsolat, de egy időben csak az egyik irányban zajlik kommunikáció -1- Bekötés A DS2K hálózati elem bekötését az 1. ábra mutatja 1. ábra Az alábbi táblázat tartalmazza a bekötés, beállítás és működtetés szempontjából fontos csatlakozási pontok, és egyéb alkatrészek feladatát: Jelölés Megnevezés Feladat J1 RS485 A csatlakozás 2 Összeköttetés a távoli RS485-os hálózati elemekkel J2 RS485 B csatlakozás
Összeköttetés a távoli RS485-os hálózati elemekkel J3 LEDS Hőmérséklethatárokat jelző LED-ek J4 IN1 Digitális bemenet J5 ICD Programletöltés céljára J6 RELAY1 1. relés kimenet J7 RELAY2 2. relés kimenet J8 DS1 1. külső hőmérő csatlakozója J9 DS2 2. külső hőmérő csatlakozója IC5 - Beépített hőmérő (0. számú) 2 Az RS485 A és RS485 B csatlakozópontok egyenrangúak, párhuzamosan vannak kapcsolva. Az egyszerűbb szerelhetőség miatt van belőlük kettő. -2- Jelölés Megnevezés Feladat IC6 - Beépített páratartalom szenzor K1 PWR kapcsoló A 24V-os táplálás kapcsolására szolgál S1 ADDRESS A hálózati elem címének beállítására szolgál S2 Vonallezáró (terminátor) Az RS485-ös hálózat végpontjának lezárására szolgál D4 POWER LED A bekapcsolt állapotot jelzi D5 TX LED Az RS485 vonalra történő adást jelzi D6 RX LED Az RS485 vonalról történt adat fogadást jelzi D8
ERROR LED Hibajelző LED D13 REL1 LED 1. relés kimenet állapotát jelzi D12 REL2 LED 2. relés kimenet állapotát jelzi 1. Táblázat Az RS485-ös hálózati elemek összekötésére 2x2-eres árnyékolt csavart érpárt kell alkalmazni. Az egyik érpárral a hálózati elem A-B pontjait kell összekötni más hálózati elem azonos nevű pontjaival. A másik csavart érpárral pedig a GND-+24V jelű vezetékeket kell csatlakoztatni mindkét oldalon. A kábel árnyékolását a SHIELD jelű csatlakozópontra kell kötni szintén mindkét oldalon. A következő ábra egy RS485 hálózat kialakítását mutatja. PC RS232 230V~ RS232 RS232-RS485 konverter 1. RS485 hálózati elem DS2 RS485 A RS485 B RS485 A RS485 B RS485 A RS485 B 2. ábra A készülék az RS485 buszal továbbított 24V-os egyenfeszültségről müködik. A K1 kapcsolóval tudjuk ki- és bekapcsolni. -3- Az eszköz felszerelése és az RS485 hálózat telepítése után a készüléket hálózat
tulajdonságainak megfelelően az S1 és S2 jelű DIP kapcsolókkal be kell állítani. Az eszköz címének beállítása A hálózaton lévő eszközöknek különböző címmel kell rendelkezniük, azért, hogy a PC egyenként meg tudja őket szólítani. Az eszköz címét az S1 DIP kapcsolóval lehet beállítani 1 és 31 között S1 állása (1=be, 0=ki) sorrend <54321> Eszköz címe S1 állása (1=be, 0=ki) sorrend <54321> Eszköz címe 00000 Tiltott állapot 10000 16 00001 1 10001 17 00010 2 10010 18 00011 3 10011 19 00100 4 10100 20 00101 5 10101 21 00110 6 10110 22 00111 7 10111 23 01000 8 11000 24 01001 9 11001 25 01010 10 11010 26 01011 11 11011 27 01100 12 11100 28 01101 13 11101 29 01110 14 11110 30 01111 15 11111 31 2. Táblázat Lezárás beállítása Az RS485 hálózat két végpontját le kell zárni, ha egy hálózati elem egyben a hálózat végpontja is, akkor ON-ba kell állítani az
S2 mindkét kapcsolóját. Ha a hálózati elem nem a hálózat végpontján helyezkedik el, akkor OFF-ba kell állítani az S2 mindkét kapcsolóját. A 2. ábra szerinti elrendezésben tehát a konverter és a DS2K hálózati elemnél be kell állítani a lezárást, a 1. hálózati elemnél viszont nem szabad beállítani -4- Működés Az RS485 hálózat a vonalra 2-32 db eszköz csatlakozik, és mindegyik vételen áll. A kommunikáció egy PC (MASTER) irányításával zajlik egyezményes protokoll szerint: A PC adásra vált, és kiküld egy címzett parancsot, amit mindegyik hálózati eszköz (SLAVE) vesz és értelmez, de csak a megcímzett eszköz válaszol a MASTER-nek. Az eszköz a PC-től jövő parancs esetén, ha azt neki címezték, elvégzi a kért feladatot, és visszaküldi a kért adatot, vagy kimeneti parancs esetén visszajelzést küld. Az eszköz működését LED-ek jelzik vissza. REL1 és REL2 a relék állapotát jelzi Az ERROR LED hibajelzést ad. A
kommunikáció állapotát a TX és RX LED-ek jelzik Más egységtől jövő adatcsomag érkezését a zöld színű RX LED jelzi, ha az eszköz válaszol a kérésre, azt a piros színű TX LED jelzi. Ha nincs kommunikáció a vonalon mindkét LED sötét Kommunikáció A kommunikáció a PC és DS2K hálózati elem között a következő paraméterek szerint zajlik: Paraméter Érték Sebesség 57600 Baud Adatbitek száma 8 Paritás Nincs Stop bitek száma 1 3. Táblázat A adatok a hálózati eszközök között ún. adatcsomagokban közlekednek Egy adatcsomag több byte-okból áll, melyeknek felépítését az alábbi ábra tartalmazza: 1. byte 2. byte 3. byte 4.-n byte m. byte Hossz (byte) 1 1 1 116 1 Megnevezés Csomag hossza Cél címe Forrás címe Felhasználásfüggő adatok Ellenőrző összeg 3. Ábra 1. byte Az adatcsomag teljes hossza byte-okban 2. byte A célkészülék címe. A PC címe 0, a hálózati elemek címe beállítható 3. byte
A küldő készülék címe 4.-n byte Felhasználásfüggő adatok m. byte Ellenőrző összeg (a csomag első n byte-jának összege) -5- A kommunikáció menete: A MASTER küld egy kérést a SLAVE-nek. A SLAVE veszi a kérést Ellenőrzi az adatcsomagban a címet. Ha a kérés neki szól, akkor válaszol A MASTER kérése és SLAVE válasza között T1 idő telik el. A SLAVE válasza és a MASTER következő kérése között T2 idő telik el. (Lásd 4 ábra) T1 és T2 idő érvényes értéktartománya a következő: T1 = 0.35 mS 10 mS T2 = 0.35 mS végtelen MASTER Kérés 1 Kérés 2 SLAVE Válasz 1 T1 T2 4. Ábra Példa egy adatcsomag váltásra Parancs: Hőmérséklet lekérdezése 06h 01h 00h 0Eh 00h 06h - csomag hossza 01h - célkészülék címe 00h - küldõ címe 0Eh - parancs 00h – hőmérő sorszáma 15h - ellenõrzõ összeg 15h = 6 byte = DS2K = PC = Hőmérséklet lekérdezése = 00h = 0. hőmérő = 06h+01h+00h+0Eh+00h Válasz:
Hőmérséklet küldése 07h 00h 01h 8Eh 07h - csomag hossza 00h - célkészülék címe 01h - küldõ címe 8Eh – hőmérséklet küldése 17h, 80h – hőmérséklet 2Dh - ellenõrzõ összeg 17h 80h 2Dh = 7 byte = PC = DS2K = 23,5 °C = 07h+00h+01h+8Eh+17h+80h -6- Vezérlőparancsok A következő táblázat a DS2K hálózati elemnek küldhető parancsokat tartalmazza. Az adatcsomag a 3. ábra szerint épül fel A parancs kódja és a kiegészítő adatok a "felhasználásfüggő adatok" mezőben kerülnek átküldésre. Parancs kódja Jelentés Kiegészítő adat Kiegészítő adat jelentése 00h Relé kimenetek kapcsolása 1 byte 02h PIC állapotának lekérdezése - - 03h Relék állapotának lekérdezése - - 04h Relé 1 kapcsolása 1 byte 0 = ki, 1 = be 05h Relé 2 kapcsolása 1 byte 0 = ki, 1 = be 06h Hibásan fogadott frame-ek számlálójának lekérdezése - - 07h Hibásan fogadott frame-ek számlálójának nullázása -
- 0Eh Hőmérséklet lekérdezése 1 byte 0Fh Páratartalom lekérdezése - - 10h Node azonosító és verziószám lekérdezése - - 13h Hőmérséklet kompenzáció be-/kikapcsolása 1 byte 14h Hőmérséklet kompenzáció állapotának lekérdezése - 15h Hőmérséklethatárok beállítása 2 byte 2 byte 16h Hőmérséklethatárok lekérdezése - - 1Ah Digitális bemenet lekérdezése (IN1) - - 1Fh Watchdog újraindítása a megadott idővel 21h Felszerelési hely lekérdezése 22h Felszerelési hely beállítása 1 byte 15 byte -7- 000000xxb 0. bit - 1 relé állapota (0=ki, 1=be) 1. bit - 2 relé állapota (0=ki, 1=be) Hőmérő sorszáma (0, 1 vagy 2) 0 = ki, 1 = be alsó hőmérséklethatár (Celsius * 256) felső hőmérséklethatár (Celsius * 256) Watchdog idő (1.255 másodperc) Felszerelési hely (ASCII) 23h EEPROM tartalom lekérdezése 2 byte EEPROM lap sorszáma (031) (Lapméret = 16 byte) 24h RAM tartalom lekérdezése
2 byte RAM lap sorszáma (069) (Lapméret = 16 byte) 4. Táblázat -8- Válasz üzenetek Az 5. táblázat a DS2K hálózati elem által visszaküldött válaszokat tartalmazza A válasz kódja megegyezik a parancs kódja+80h-val. (kivétel a hibák lekezelése és nyugtázás) Válasz kódja Jelentés Kiegészítő adat Kiegészítő adat jelentése 80h Nyugtázás 1 byte 00h – sikeres végrehajtás 01h – ismeretlen parancs 02h – hibás felhasználásfüggő adatok 03h – még nincs válasz 82h PIC állapota 1 byte 0000000xh 0. bit – Reset státusz ( 0 = Watchdog reset 1 = Power on reset) 83h Relék állapota 1 byte 000000xxh 0. bit – Relé 1 állapota (0 = ki, 1 = be) 1. bit – Relé 2 állapota (0 = ki, 1 = be) 86h Hibásan fogadott frame-ek számlálója 3 2 byte ERROR számáló értéke (0.65535) 8Eh Hőmérséklet 2 byte Hőmérséklet (*256 Celsius) 8Fh Páratartalom 1 byte Páratartalom (%) 90h Node azonosító és verziószám 8
byte 4 byte Node azonosító = "DS2K Verziószám = "1.11" 94h Hőmérséklet kompenzáció állapota 1 byte 0 = ki, 1 = be 96h Hőmérséklethatárok 2 byte 2 byte alsó hőmérséklethatár (Celsius * 256) felső hőmérséklethatár (Celsius * 256) 9Ah Digitális bemenet állapota (IN1) 1 byte 1 byte 0000000xh 0. bit – IN1 állapota ( 0 = alacsony 1 = magas ) 0000000xh 0. bit – IN1 változás ( 0 = nem változott 1 = változott ) " A1h Felszerelési hely 15 byte Felszerelési hely (ASCII) A3h EEPROM lap tartalom 16 byte A lekérdezett EEPROM lap tartalma A4h RAM lap tartalom 16 byte A lekérdezett RAM lap tartalma 5. Táblázat 3 A készülék az összes a buszon közlekedő adatcsomag helyességét ellenőrzi, függetlenül attól, hogy a csomag neki szólt vagy nem. Ha egy csomag ellenőrző összege hibás, akkor megnöveli ezt a számlálót -9- Hőmérsékélet mérése A hőmérsékletek mérése a Dallas gyártmányú
DS18B20 típusú hőmérséklet szenzorral történik. A mért értéket –55 . + 125 °C tartományba eshet A mért hőmérséklet lekérdezése a 0Eh parancsal történik, melynek meg kell adni a hőmérő sorszámát. A DS2K készülék három hőmérőt kezel, igy a sorszám 0, 1 vagy 2 lehet A készülék képes a DS18B20 mért érték átlagos hibagörbe alapján történő kompenzációjára. Az átlagos hibagörbét az alábbi ábra mutatja. A vizszintes tengely a mért hőmérséklet, a függőleges pedig a mérés hibája. Mindkettő Celsius fokban értendő 1.4 1.2 1 0.8 0.6 0.4 0.2 0 -80 -60 -40 -20 0 20 40 60 80 100 120 140 -0.2 -0.4 5. Ábra A hibagörbe közelítése a következő másodfokú függvénnyel történik: T hiba = 0,0001302 * (T mert -19)2 - 0,1914 Bekapcsolás után az alapértelmezés szerint a kompenzációt elvégzi a készülék, de a 13h parancs segítségével ki illetve ismét be lehet ezt kapcsolni. 14h parancs segítségével
lekérdezhetjük a kompenzáció aktuális állapotát. Páratartalom mérése A relatív páratartalom (RH) mérése a Honeywell gyártmányú HIH3610 típusú páratartalom szenzorral történik. A mért értéket 0100 % tartományba eshet A mérés hibája 2% A mért páratartalom lekérdezése a 0Fh paranccsal történik A relatív páratartalom függ az aktuális hőmérséklettől. A valós páratartalom kiszámítása az alábbi képlet szerint történik: RH valós = RH mért / (1.0546 - 000216 T ) Watchdog A kontrollerben müködik egy Watchdog időzítő, amely a PC-s kapcsolatot felügyeli. A PC-nek rendszeresen 1Fh parancsot kell küldenie a DS2K felé, hogy jelezze a kapcsolat fentlétét. Ha a kapcsolat megszakad és lejár az időzítő, akkor azt a DS2K az aktuális LED villogásával jelzi, és elengedi az esetlegesen behúzott reléket. - 10 -