* Installige Python 2.7 * Käivitage python.exe ez_setup.py https://pymodbus.googlecode.com/files/pymodbus-0.9.0.zip * c:\Python27\python.exe setup.py install * Toite kontroll Ühenda 12V vooluallikas karbi Power-ossa. Miinusjuhe (adaptri ümarpistiku välimine) läheb GND (ground) klemmile. Plussjuhe ühendada V0 (põhitoide) ja VS (lisatoide) klemmile. Lisatoite ühendamisel peaks karbis hakkama põlema roheline tuli. Voltmeetriga kontrolli 1-wire klemmidelt pinget. 5V ja GND vahel peaks olema 5-voldine pinge. Sealt saab seda vajadusel toiteks võtta (kuni 500 mA) Ühenduse kontroll IO karbi ühendamiseks arvuti taha tuleb see ühendada Ethernet keerupaarikaabliga. Arvutil (nt Control Paneli alt) võrgukaardile määrata ip-aadressiks nt 10.0.0.2, võrgumaskiks 255.255.255.0. Siis võiks arvuti ära tunda IO karbi sinna kirjutatud aadressi järgi (nt 10.0.0.134). Modbus ühenduse kontrollimiseks tuleb ühenduda sama masina porti 10002 )(võib kõigepealt katsetada telnetiga (telnet 10.0.0.135 10002)). * Väljundi sisse ja välja lülitamine Seadmete juhtimiseks sobivad kahendväljundite kanaleid DO1...DO8. Tähistuses “sourcing output” tähendab seda, et väljund on võimeline voolu välja andma, mitte ”neelama”. Katseks saab sinna ühendada näiteks LED läbi voolu piirava takist, sobiva mähisepingega relee või väikese mootori. Nagu mujal, nii ka väljundis on GND miinusklemm. Sinna tuleb ühendada seadme miinuspool, LEDi puhul lühem jalg. Teine juhe tuleb ühendada soovitud väljundisse, näiteks väljundisse nr 8, mis on maandusjuhtme (GND) kõrval. Edasi tuleb klemmil pinge käsu abil sisse või välja lülitada. Käsurealt saab selleks kasutada Pythoni abiprogrammi mbw_pm.py, mille kasutamiseks peavad olema installitud moodulid pymodbus ja pyserial ning kataloogis peab olema ka fail minimalmodbus.py aadressilt http://www.itvilla.ee/support/minimalmodbus.py Iga väljundkanal vastab ühele registribitile aadressil 0 (vanem bait registris vastab kanalitele D01...DO8 (bit15 = DO8). Väljundi nr 8 sisselülitamiseks tuleb kirjutada python mbw_pm.py 1 0 8000 10.0.0.134:10002 Väljundi nr 8 väljalülitamiseks tuleb kirjutada python mbw_pm.py 1 0 0000 10.0.0.134:10002 python mbw_pm.py 1 114 0 10.0.0.134:10002 Pideva nivoo asemel on võimalik väljundisse tekitada ka täpse pikkusega impulsse (maksimaalselt 4095 ms). Impulssväljundite jaoks on igal kanalil oma register, 108 vastab kanalile DO1 ja registriaadress 115 kanalile DO8. python mbw_pm.py 1 115 0FFF 10.0.0.134:10002 Impulsi polaarsus sõltub eelnevalt registrisse 0 kirjutatud väärtusest (XOR). Sisendi lugemine Analoogsisendite väärtust saab lugeda AII klemmidelt. Väärtused loetavad alates registrist 2, millele vastab klemm1. Registrile 3 vastab klemm2 kuni registrile 9 klemm 8. Väärtus antakse 12-bitisele arvuna, kus siis mõõtepiirkonna maksimumväärtusele 10V (vastav kanali ühendussild asendis 10V) vastab arv 4095 ning miinimumväärtuseks on 0 (nullilähedane arv). Mõõdetava pinge väärtuse saab arvutada mõõõdetud koodi alusel valemiga U=adckood*10/4095. Lihtsaimal juhul ühendame klemmi nr AI 1 5V toiteklemmiga ning loeme väärtuse. Soovi korral saab sisendisse ühendada fotodioodi (vastupingestatult, katood +5V, anood sisendisse). Valgustuse tugrevnemisel kasvab ADC väljundkood. python mbw_pm.py 1 2 1 10.0.0.134:10002 Kui otseühendus on olemas, siis peaks tulema maksimumilähedane väärtus, kui mitte, siis nullilähedane väärtus Sujuvaks väärtuse määramiseks saab kasutada potentsiomeetrit, mille üks ots on ühendatud 5V toiteallikaga, teine ots maandusega ning keskmine soovitud klemmiga. Klemmi väärtuse järgi on võimalik nõnda lugeda potentsiomeetri asendit (ning ka mitmesuguseid muid sisendeid, mis pingena oma tulemuse annavad) Kahendsisendite lugemine Toimub registriaadressilt 1, kusjuures vanem bait registris vastab kanalitele DI1...DI8 (bit15 = DI8). Järgmine lugemistulemus kajastab 5V sisendsignaali kanalis DI1 $ python mbw_pm.py 1 0 2 10.0.0.134:10002 ('port', '10.0.0.134:10002') (1, 0, 2, 'result', '[65280, 256]')