f t g m
Copyright 2024 - Custom text here
× kuvaus

Kanalan automaatio, Arduino/Raspberry ja modbus

  • mick
  • Topic Author
  • Visitor
  • Visitor
5 years 7 months ago - 5 years 6 months ago #1100 by mick
Eli onnistuisikohan tuollaisen edullisen piirilevykoneen etäluenta modbus -väylän kautta?

Arduino:
Kanalan automatiikkaa mietin. Esimerkiksi Arduinolla kanalan sisälämpötilan mittaus, kanaluukun tila(auki vai kiinni), valojen tila ja ohjaus, lämmityksen ohjaus. Arduino toimisi slavena, eli siltä kysellään analogiatulojen tiloja, ja luetaan myös digitaalitulot. Ja ohjataan digitaalilähtöjä. Jokin muu laite masteriksi, "oikea" logiikka tai vaikkapa Raspberry Pi? Ehkä vielä paikallisnäyttö, josta lämpötilan voi helposti lukea.
Miksi Arduinolla? Ensinnäkin se on ihan hiton halpaa rautaa. Ja hyvin energiapihi, 20mA..80mA. Noin 10 eurolla saa toimivan laitteen :) No juu, toki se vaatii vielä virtalähteen ja releitä, mutta niitä minulla on jo valmiiksi :)

Raspberry:
Samat kuin edellä, sähköä syö vähän enemmän muttei vielä hirveästi kuitenkaan. Pi 3 B+ Idle 350 mA (1.9W), kovassa käytössä 950 mA (5.0 W). www.pidramble.com/wiki/benchmarks/power-consumption
Lisäksi saisi mahdollisuuden web-kameran käytölle!

/muokkaus! Muutin otsikkoa, koska tämä projekti koskee kanalaa :)
Last edit: 5 years 6 months ago by mick.

Please Kirjaudu to join the conversation.

  • mick
  • Topic Author
  • Visitor
  • Visitor
5 years 7 months ago - 5 years 6 months ago #1101 by mick
No eBay APP ID défined in Kunena configurationNo eBay APP ID défined in Kunena configurationNo eBay APP ID défined in Kunena configuration- Arduino Modbus
www.udemy.com/how-to-program-an-arduino-...-rs485-master-slave/
playground.arduino.cc/Code/ModbusMaster
www.dmcinfo.com/latest-thinking/blog/id/...into-a-modbus-device
www.hackster.io/hwhardsoft/how-to-use-mo...-with-arduino-6f434b
techsparx.com/energy-system/modbus/ardui...perature-sensor.html
github.com/smarmengol/Modbus-Master-Slave-for-Arduino

- Arduino, Raspberry, Galileo Modbus
www.cooking-hacks.com/documentation/tuto...ry-pi-intel-galileo/

- Raspberry
www.instructables.com/id/How-to-Use-Modbus-With-Raspberry-Pi/
www.doria.fi/bitstream/handle/10024/1247...3C2BCB447?sequence=2
www.raspberrypi.org/forums/viewtopic.php?t=78444
www.element14.com/community/thread/61990...splayFullThread=true
github.com/stephane/libmodbus/wiki/Libmodbus-on-Raspberry-pi
jacekhryniewicz.wixsite.com/website/rasp...y-pi-with-modbus-tcp

Eli ohjeitahan näemmä riittää! :D Nyt vain valittava sopivat, ja niiden pohjalta sorvattava oma systeemi. Modbus RTU on se tutuin minulle, ohjelmoimani logiikat ymmärtää sitä. Eli valitsen sen pohjaksi.

Minulla olisi lan-shield käytettävissä Arduinolle. Olisikohan siitä mitään hyötyä?

Olen juuri kaivamassa sähkökaapelille ojaa pihaan, että saa auton talvella lämmitykseen. Samalla kun on kerta piha auki, menisi ojassa myös datakaapelit. Talon ja kanalan väli hoituisi näppärästi tuon ojan kautta. Jokatapauksessa web kamera pitää kanalaan saada, eli CAT5 kaapeli sinne ojaan tulee. Jos laittaisi pari erillistä CAT5 kaapelia samantien, niin toista voisi käyttää muuhun datansiirtoon. Toisella kaapelilla nettiyhteys(jonka voi jakaa kytkimellä sitten useammalle laitteelle tarvittaessa), ja toinen kaapeli modbus käyttöön. Tai muutaman IO:n siirtoon sellaisenaan? Jaa, saattaa olla liian pitkä kaapeli että saa järkevästi mitään IO:ta siirrettyä... Mutta Modbus tuon kautta kyllä kulkisi!

Koska matka on pitkä, ei RS-232 signaali toimi. Tarvitaan muutos RS-232 --> RS-485 ja sama takaspäin toisessa päässä. eBay auttaa jälleen:
Vallan 1.17€ kappale maksaa muuntimet. Mitä töissä käytän, niin ne maksaa jotain 50-100 euroa :D


Jaa vielä edullisempi, 0.62€


Ja vielä edullisempi :D 2.80€ 10 kappaletta = 0.28€ kappale!

Tilasinpas sitten muutamalta myyjältä tuon TTL to RS-485 muunnin x10 paketin. Eli periaatteessa 30 kpl noita olisi nyt tulossa, hintaan 9€ :D Saa nähdä tuleeko kaikki vai ei mikään. Oli niin edullinen hinta, että saattaa toimia vain houkuttimena myyjän eBay kauppaan, ja eivät edes lähetä tuotetta vaan palauttavat rahat. Monesti jo käynyt näin todella edullisten tuotteitten kanssa...

- Arduino Modbus Tcp/Ip
forum.arduino.cc/index.php?topic=523421.0
blog.industrialshields.com/en/modbus-tcp...-arduino-based-plcs/
arduino.stackexchange.com/questions/3623...vailable-for-arduino
www.udemy.com/how-to-program-an-arduino-...s-tcp-client-server/
myarduinoprojects.com/modbus.html
domoticx.com/arduino-library-modbus/
stackoverflow.com/questions/37155775/modbus-tcp-ip-on-arduino
Last edit: 5 years 6 months ago by mick.

Please Kirjaudu to join the conversation.

  • mick
  • Topic Author
  • Visitor
  • Visitor
5 years 6 months ago - 5 years 6 months ago #1102 by mick
No eBay APP ID défined in Kunena configurationTilasin vielä Raspberrylle USB -tikun, joka tukee RS-485 signaalia

Maksoi 0.91€ kappale, muutaman tilasin samantien. Tukee myös normi koneita ,ME/2000/XP/WIN7/8、Vista ja Linux käyttiksiä. Ja tosiaan Raspberrya.
Last edit: 5 years 6 months ago by mick.

Please Kirjaudu to join the conversation.

  • mick
  • Topic Author
  • Visitor
  • Visitor
5 years 6 months ago - 5 years 6 months ago #1103 by mick

Esimerkkikuva netistä. Varaa näköjään 3 digitaalista tuloa/lähtöä tuo half duplex modbus tiedonsiirto. Full duplex ottas 6 digitaalista, mutta tuo half riittää kyllä vallan mainiosti


Tuossa esimerkkikuva, jossa Raspberryllä USB - RS-485 muunnin, ja kolme slave Arduinoa.
Last edit: 5 years 6 months ago by mick.

Please Kirjaudu to join the conversation.

  • mick
  • Topic Author
  • Visitor
  • Visitor
5 years 6 months ago - 5 years 6 months ago #1104 by mick

Osia valmiina.
1. Arduino Mega, 16x analog ja 54x digital input/output. Eli riittää ainakin tähän projektiin :D
2. Lan shield. Tuolla saa verkkoyhteyden Arduinoon. Tietenkin vaatii lisäksi koodia, ei pelkkä lisäpala riitä
3. Relelevy. Neljä relettä samalla levyllä. Valaistuksen ja lämmityksen ohjaukseen
4. Väyläohjain näytölle
5. Näyttö
6. Ohjelmointikaapeli

Vielä en ole varma tuleeko datan keruu tuolla LAN-shieldillä, vai MODBUS väylällä... Valmistaudunpas kuitenkin molempiin vaihtoehtoihin :)


Tyhjästä lähdetään. Käytöstä poistettu kotelo, hyvä tähän projektiin! Kotelon pohjalevyyn merkkasin paikat muovisille jaloille.


Arduino jalkojen varassa, LAN shield päällä. Johtojakin jo kytketty. Kuvan alalaidassa digitaaliset tulot. Tarkkaan kun katsoo, niin näkee alasvetovastukset. 9.5k ohm vastukset pistin varalta vetämään tulot maihin silloin kun tuloon ei tule "1" tietoa eli 5V jännitettä. Ylempänä kytkentärimalla analogiatulot, joita kytkin valmiiksi 3 kpl. Uskoisin niiden riittävän täsäs projektissa. Ja jos ei riitä, niin kytketään lisää :) Ylimpänä relelevy


Tästä kuvasta selviää, mitä pinnejä Arduinolta tarvitaan LAN-shieldille. ICSP (In Circuit System Programming) pinnit, ja ainakin pari digitaalista IO:ta. Loput noista pinneistä vaikuttaa menevän vain läpi tuosta LAN-shieldistä, eli on vapaasti käytettävissä.


Vasemmassa laidassa kuvaa noita mainioita PR Elektronicsin virtalähteitä, joita onnistuin haalimaan jostain huutokaupasta :) Toinen antaa 24VDC jännitteen, jota tulen luultavasti tarvitsemaan lämpöantureille. Ja toinen antaa 8VDC Arduinolle. Suositus 7..12VDC, minimissään 6VDC ja maksimissaan 20VDC. Säädettävä jännitelähde, ja tuo jännite nyt vain tuli valittua :) Jos tarvitsen johonkin muulle laitteelle jännitettä väliltä 7..12VDC, niin säädän jännitteen sitten siihen. Jos Arduinolle syöttäisi jännitettä USB-portin kautta, pitäisi olla 5VDC jännite.
Ah joo, toin tuohon riviliitinriville, jossa relelevykin sijaitsee, kuvassa alhaalle jännitteen 24VDC jännitelähteeltä. Olipas vaikeasti selitetty :D Jokatapauksessa, se 24 voltin jännite on helpompi ottaa tuosta riviliittimiltä kuin kaivella jännitelähteeltä suoraan.
Jännitelähteitten vieressä kaksi 10A sulaketta. Toinen syöttää relelevyn 1. ja 2. releelle jännitteen, ja toinen 3. ja 4. releelle. Releet kestää sen 10A virran. Kolmas sulake (ABB) on 2 ampeerin. Sen kautta menee verkkovirta jännitelähteille. Vielä yksi sulake löytyy tuolta, musta osa tuossa IO-rivillä. Sen kautta menee jännite virtalähteeltä Arduinolle.


Näyttö myös kytketty. Näytölle tulee 4 johtoa, jännite, maa ja pari signaalijohtoa väylälle. Jos olisin käyttänyt perinteistä näyttöä, olisi johtoja tullut reilusti enemmän! Eli jotakuinkin sen verran kuin tuon väyläohjaimen ja näytön välillä menee, nopeasti laskettuna 16 johtoa


Pohjalevy sijoitettu koteloon. Näytölle piirretty jo paikka kanteen, mutta ei vielä leikattu aukkoa. Ajattelin että olishan ne lämpötilat kiva myös nähdä kun ne mitataankin. Seuraavaksi pitäisi oikeastaan asentaa tuo loota kanalaan, alkaa vetämään johtoja ja antureita. Ja jännitesyöttö tietty. Lämpöanturit vain ei ole tulleet vielä... Myös lämmityspatteri ja lämpölamppu ei ole vielä saapuneet. Ja kanalassa on ihan pirusti ylimääräistä tavaraa, joka pitää siivota pois tieltä. Ensimmäiset pakkasyöt olikin juuri, eli kiirekin alkaisi jo olla!
Last edit: 5 years 6 months ago by mick.

Please Kirjaudu to join the conversation.

  • mick
  • Topic Author
  • Visitor
  • Visitor
5 years 6 months ago - 5 years 6 months ago #1105 by mick

Kaapeleita pitää haudata maahan. On vain ihan saakelin kovaa tuo maa näin sateettoman kesän jälkeen. Savipitoinen maa, paljon kiviä. Arvelin vähän kantokoukulla pehmittää aluksi, vaan eihän tuo sekään tunnu oikein uppoavan


Kymmenkunta kertaa vedetty kantokoukulla. Kuvassa näkyy kanalakin ulkotarhoineen :)


Lapiolla sitten. Pakko saada syvyyttä ojaan edes jonkinverran, ettei routa riko kaapelia


Vähitellen valmistuu


Kanalassa tällainen min/max lämpömittari. Minimissään käynyt siis 10 asteessa, ja maksimissaan 19 asteessa. Alkaa olla aiheellista jo lämmittää kohta


Siellä sitä ollaan jo yöpuulla


Itse en joutanut vielä yöpuulle, vaan pitää koittaa vetää kaapelit tuonne suojaputkena toimivaan vanhaan vesijohtoputkeen. Samalla kun MCMK sähkökaapelin vedän, niin menee nätisti myös pari CAT5 kaapeliakin. Toinen kanalan automaatiolle, toinen vaikka IP kameralle


Tuo nippu pitäisi saada vedettyä putkeen


No eihän se mennyt kuin puoliväliin ja jumittui siihen. Seuraavaksi laitoin kiviporanterään narun, ja hypistelin sen putken läpi. Ja menihän se, jee!


Narulla vetämällä ja toisesta päästä kaapelia syöttämällä homma onnistui. Hieman hidasta tosin yksin tuusata, sai muutaman askeleen ottaa tuossa päitten väliä ravatessa
Last edit: 5 years 6 months ago by mick.

Please Kirjaudu to join the conversation.

Time to create page: 0.168 seconds