Kihívást jelenthet egy RS485 eszköz konfigurálása. A Modbus és az RS-485 protokollok közötti kompatibilitás gyakran problémát okoz. Hosszú hibakeresési folyamat elé nézhet, mivel ez a két protokoll a kommunikációs verem eltérő rétegein működik.
Az RS485 protokoll egy elektromos szabvány, amely a verem fizikai rétegén működik. Olyan tényezőket határoz meg, mint a kábelhossz, az elfogadható feszültségszintek és az egyetlen buszon megosztható eszközök száma.
A Modbus protokoll az alkalmazási rétegen működik, és arra összpontosít, hogyan épülnek fel az üzenetek, hogyan vannak címezve, és hogyan értelmezi őket a vevő. Tudnia kell, melyik réteg okozza a problémát ahhoz, hogy hatékonyan megoldja.
Különbségek a Modbus és az RS485 között
Az alábbi táblázat összehasonlítja e két kulcsfontosságú protokoll legfontosabb paramétereit, amelyek befolyásolják kompatibilitásukat.
| RS485 | Modbus | |
| Réteg | Fizikai (OSI 1. réteg) | Alkalmazási (OSI 7. réteg) |
| Meghatározta | EIA/TIA-485 | Modicon 1979-ben; ma nyílt |
| Típus | Elektromos szabvány | Kommunikációs protokoll |
| Topológia | Multi-drop busz, amely ismétlők nélkül akár 32 csomópontot támogat | Master/Slave 1 masterrel és legfeljebb 247 slave-vel |
| Funkció | Meghatározza a vezetékezést, a jelszinteket és egyéb elektromos jellemzőket | Meghatározza az üzenetet, az adatkeretezést és a funkciókódokat |
| Adatformátum | Differenciális feszültségjelek | RTU (bináris) vagy ASCII keretek |
| Hibadetektálás | Nincs megadva | CRC (RTU) vagy LRC (ASCII) |
| Max. sebesség | Rövid távolságokon akár 10 Mbps | Jellemzően 9,600 – 115,200 bps RTU/ASCII esetén RS485 felett |
| Max. távolság | 1 200 m 100 kbps mellett | A fizikai rétegtől függ |
| Változatok | RS422 (pont–pont), RS232 (rövid hatótáv) | Modbus RTU, Modbus ASCII, Modbus TCP/IP |
Mi a Modbus?
Modbus egy alkalmazási rétegű kommunikációs protokoll, amelyet a Modicon fejlesztett ki 1979-ben. Ez egy nyílt, ingyenes protokoll, amely meghatározza, hogyan épülnek fel az üzenetek, amikor egy mestereszköz és egy vagy több slave között kerülnek elküldésre. A Modbus különféle átviteli megoldásokon fut, beleértve az RS485-öt, RS232-t, RS422-t vagy az Ethernetet (TCP/IP).
Fő jellemzők
• Architektúra: Egy mester legfeljebb 247 címezhető slave eszközzel kommunikál, amelyek 1–247-ig vannak számozva, a 0-ás ID pedig a körüzenethez (broadcast) van fenntartva.
• Kommunikációs modell: A mester kezdeményezi az összes kommunikációt azzal, hogy kéréseket küld a slave eszközöknek, amelyek csak válaszolhatnak.
• Címzés: Minden kérés tartalmazza a cél Slave ID-t, amelyet minden válasz visszatükröz.
• Adattípusok: 1 bites tekercsek és diszkrét bemenetek, 16 bites bemeneti és tartó regiszterek.
• Hibadetektálás: ASCII módban LRC, RTU módban CRC-16.
Adatmodell
• A tekercsek (1 bites, olvasás/írás) diszkrét kimeneti állapotot biztosítanak.
• Diszkrét bemenetek (1 bites, csak olvasható) a diszkrét bemeneti állapothoz.
• Bemeneti regiszterek (16 bites, csak olvasható) a mért bemeneti értékeket tárolják.
• Tartóregiszterek (16 bites, olvasás/írás) konfigurációs és kimeneti értékeket tartanak.
Változatok: RTU, ASCII, TCP/IP
• A Modbus RTU az RS485-tel való használat szabványa a sebessége és a kompakt mérete miatt. Bináris kódolást és CRC-16 hibavizsgálatot alkalmaz.
• A Modbus TCP/IP Etherneten keresztül használatos, és nincs szüksége CRC/LRC-re, mert a TCP kezeli a kommunikáció integritását.
• A Modbus ASCII hex-karakteres kódolást és LRC hibavizsgálatot használ. A változatot jellemzően RS232-n használják, és ember által olvasható.
Mi az RS485?
RS485 (EIA-485) egy fizikai rétegen működő elektromos szabvány, amely meghatározza, hogyan továbbítódnak a jelek a vezetékeken. A protokoll olyan szempontokat határoz meg, mint a kábel impedanciája, a feszültségszintek, a maximális kábelhossz és a busz topológiája. Az RS485 nem ismeri a magasabb rétegű protokollokat, az üzenetformátumokat vagy az adat tartalmát.
Fő jellemzők
• Jelátvitel: A differenciális jel, vagyis az A és B vezetékek közötti feszültségkülönbség, rendkívül ellenálló az elektromos zajjal szemben.
• Topológia: Ismétlők nélkül támogat egy több leágazású buszt akár 32 egységterheléssel egyetlen vezetékpáron.
• Max. távolság: Körülbelül 1 200 m 100 kbps mellett, magasabb adatátviteli sebességnél rövidebb hatótávolsággal.
• Max. adatátviteli sebesség: Rövid, 15 m alatti távolságokon akár 10 Mbps-ot is támogat.
• Duplex: Az alapértelmezett a fél-duplex egy sodrott érpárral. A teljes duplex két érpárral valósítható meg.
Kapcsolódó szabványok: RS232 és RS422
• Az RS232 egy egyvégű, pont-pont protokoll, maximális hatótávolsága körülbelül 15 m. A jelek nem kompatibilisek az RS485-tel. Közvetlen adaptereket jellemzően RS485-USB vagy RS-485-Ethernet megvalósításokhoz használnak.
• Az RS422 differenciális jelátvitelt biztosít az RS485-höz hasonlóan, de vonalanként egy meghajtóra korlátozódik pont-pont kommunikációhoz, többpontos (multi-drop) támogatás nélkül.
Eszköz a Modbus adatok monitorozására és elemzésére
Kommunikációs problémák hibaelhárításához meg kell érteni az RS485 és a Modbus közötti különbséget, valamint láthatóvá kell tenni, mi kerül továbbításra a buszon. Ennek a láthatóságnak az elérésére a leghatékonyabb módszer a nyers soros portforgalom elemzése. Ez az elemzés lehetővé teszi a problémák hatékony hibakeresését a regiszterértékek ellenőrzésével és a címzési hibák feltárásával. A Serial Port Monitor (SPM) egy szoftveres megoldás, amely ezeket az információkat biztosítja.
A Modbus Test Software egy protokollelemző, amely információt nyújt az RS232/RS422/RS485 interfészeken keresztüli Modbus kommunikációról. A szoftver lehetővé teszi a felhasználók számára, hogy könnyedén észleljék és megoldják a Modbus kommunikáció tesztelése és hibakeresése során felmerülő problémákat. Az egyik legértékesebb funkciója, hogy képes megjeleníteni és naplózni a rendszer soros portján keresztül haladó adatokat.
Modbus tesztelő szoftver
Modbus Analyzer lehetővé teszi a felhasználók számára a Modbus RTU és ASCII soros adatok megjelenítését, naplózását és hibakeresését, miközben azokat a rendszer RS485 portjain keresztül továbbítják.
Ez a professzionális Modbus tesztszoftver lehetővé teszi a felhasználók számára:
• Csatlakozást olyan soros portokhoz és azok megfigyelését, amelyeket már egy másik program használ. Az adott port által fogadott összes adat valós idejű megjelenítése elérhető az azonnali megfigyeléshez és hibakereséshez.
• Több soros port egyidejű megfigyelését. Egyetlen munkamenetben szinkron módon elemezheti több soros port aktivitását. A mindkét irányban áramló adatok egyetlen naplóban, beérkezési sorrendben kerülnek megjelenítésre a könnyebb áttekinthetőség érdekében.
• Az adatok megtekintését többféle formátumban, beleértve a táblázat, terminál, vonal és dump nézetet. Több nézet egyszerre is megjeleníthető, és szűrőkkel finomhangolhatja a megfigyelést.
• A soros eszközre továbbított adatok emulációjának végrehajtását az aktivitás megfigyeléséhez, amikor az adott parancsoknak van kitéve.
Gyakran Ismételt Kérdések
Nem, ezek eltérő, egymást kiegészítő protokollok. A Modbus egy üzenetküldési protokoll, míg az RS485 a fizikai elektromos interfészt határozza meg. Az RS485 az az átviteli közeg, amelyen keresztül a Modbus üzenetet továbbít.
Az RS485 szabvány ismétlők nélkül legfeljebb 32 egységterhelést támogat egy buszon, míg a Modbus akár 247 slave-et is engedélyez. Jellemzően a 32 csomópontos fizikai korlát a standard, és ismétlőket alkalmaznak a támogatott eszközök számának bővítésére.
A Modbus RTU egy kompakt és hatékony protokoll, amely binárisan továbbítja az adatokat CRC hibavédelemmel. Ez az előnyben részesített protokoll az RS485 használatához. A Modbus ASCII ember által olvasható hexadecimális karakterekként továbbítja az adatokat, és LRC hibavédelmet alkalmaz. Kevésbé hatékony megoldás, de megkönnyíti az egyszerűsített hibakeresést RS232 kapcsolatokon.
Igen. A Modbus RS232, RS422 vagy Ethernet (Modbus TCP/IP) kapcsolaton keresztül is működhet. Az RS485 az előnyben részesített fizikai réteg a Modbushoz ipari környezetben, mivel többpontos (multi-drop) képességekkel rendelkezik és ellenálló a zajjal szemben.