Mit ajánlanátok?

Processing/Wiring (illetve C) nyelvű programozási fogások, tippek. (AVR-Duino, Arduino, EthDuino, Diecimila, Severino, Nano, LilyPad)
kisjoke91
Újonc
Újonc
Hozzászólások: 5
Csatlakozott: 2014. július 15. kedd, 18:09

Mit ajánlanátok?

Hozzászólás Szerző: kisjoke91 »

Sziasztok!

Nem régiben fedeztem fel az oldalt, kezdtem el az arduinot tanulni, azonban felmerült bennem pár kérdés.
Nagyon alapszintű C++ tudásom van, tehát az arduino programnyelv mesésen egyszerű, és nagyszerű a számomra. Kezdőként jó választás, nem igényel mélyebb hardverismeretet. felmerült bennem, hogy mivel az arduino lelke avr, ez egy alternatíva lehetne a mezei avr- ek arduino nyelven való programozására. az assembly nehezebb számomra, nem igazán lenne kedvem vele bíbelődni.
Észrevettem, hogy az arduino ide a skicc fordításkor létre hoz egy .hex kiterjesztésű fájlt. Gyanítom hogy ez ugyan az, mint az avr chipbe juttatandó program, amit egy égetővel írnak bele. Működne egy Arduino Mega 2560 ra írt program az Arduino IDE által generált hex fájlal való égetése egy ATmega2560 chipbe? Ha igen, hogyan megy ez? Elsősorban a nyelv miatt érdekel az arduino, panelt nem szeretnék venni, inkább avr-t és építgetnék. A másik felmerülő kérdés, hogy néhány helyen olvastam, hogy az arduinonak nagyobb korlátai vannak az avr-ek asm programozásával szemben. Néhány feladat megkívánja a folyamatos üzembiztos működést. Nem mindenképpen ragaszkodom az arduino hoz, de egyelőre egyszerű programozásának köszönhetően egészen biztosan gyakorlom még.. Mac OS X en lehet avr-t programozni?
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Re: Mit ajánlanátok?

Hozzászólás Szerző: Robert »

Szóval sorban:

1, Igen, a kapott HEX van az AVR-be beégetve. Ez a lefordított program.
2, Égetés: Olvass utána, nem egyszerű. A HEX mivel születik?
Kezdőként a programozóval jónéhány AVR-ből kizárod magadat. A rutintalanság, kísérletezés miatt. Arduinoval nincs ilyen probléma.
Programozók: http://avr.tavir.hu/modules.php?name=Co ... age&pid=81
3, Az építés hátránya: kudarcok, mert nincsen gyakorlatod/műszered a hibakereséshez, és nem tudod, hogy HW, SW vagy egyéb hiba van... Egy Arduino 3...10 eFt közt van. Az alsóbbat nem tudod ennyiből megépíteni + a szívással töltött órákat is vedd bele!
4, Üzembiztos működés: 7/24? Na erre az Arduino NINCS felkészítve.
5, MacOSX: igen. AVRDUDE, Arduino, stb....


Javaslat: Mivel kezdjek cikk I-II-III. fejezete:
http://avr.tavir.hu/modules.php?name=Co ... ge&pid=140
kisjoke91
Újonc
Újonc
Hozzászólások: 5
Csatlakozott: 2014. július 15. kedd, 18:09

Re: Mit ajánlanátok?

Hozzászólás Szerző: kisjoke91 »

köszönöm a linkeket elolvasom őket, mielőtt feleslegesen kérdezek. a HEX az arduino ide app-al készül. avr gcc-vel stabilabb, folyamatos üzemre szánt felhasználáshoz érdemes fejjleszteni?
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Re: Mit ajánlanátok?

Hozzászólás Szerző: Robert »

A programkódnak kell felkészülnie és a HW-nak a 7/24-es üzemre.
Ez nem az 5 perces fejlesztés. Nézegess PLC kapcsolási rajzokat. És szörnyülködj :).


Az Arduino belső fordítója is a gcc.
kisjoke91
Újonc
Újonc
Hozzászólások: 5
Csatlakozott: 2014. július 15. kedd, 18:09

Re: Mit ajánlanátok?

Hozzászólás Szerző: kisjoke91 »

Egy PLC az még is csak PLC. Programba nem volt szerencsém betekintést nyerni még, létradiagramról is csak messziről hallottam. de vezérlőszekrényekbe napi szinten be kell nyissak a melóban, mert mindig van valami bajság, ott látom, hogy agyon van reteszelve minden :) hát még a PLC mennyire agyon lehet biztosítva:) lényeg nem mondhat kakukkot egy bonyolultabb vezérlésnél másképp akkor baj lesz pl a gyártósoron, vagy akár ember életek is múlhatnak ezen de ez más téma :D

Szóval az arduino Ide tökéletesen alkalmas bizonyos chipek fejlesztésére (a board fajtákban található chipekkel megy legalább is gondolom). Így legalább nem kell bajlódni az Assembly-vel, esetleg ha szükség lesz rá egyszer :)
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Re: Mit ajánlanátok?

Hozzászólás Szerző: Robert »

Arduinonál kötöttek a chipek és az órajelek. A keretrendszer boards.txt állományában fel vannak sorolva.
kb. 5-6 féle van benne...
kukuri
Bitmanipulátor
Hozzászólások: 132
Csatlakozott: 2014. január 20. hétfő, 12:50

Re: Mit ajánlanátok?

Hozzászólás Szerző: kukuri »

Üdv!
Robert írta:Szóval sorban:
4, Üzembiztos működés: 7/24? Na erre az Arduino NINCS felkészítve.
Ezt hogyan kell értelmezni? Naponta újra kell indítani. Vagy eleve mibásan müködik időnkként?
Vagy csak túl könnyen meg lehet zavarni az I/O kon keresztül?

Ha az I/O -valahogy le vannak védve hogy semmiféleképpen ne kapjon nagy áramot, a tápellátás biztosítva van és egyéb védelmek be vannak építve akkor sem lehet üzembiztosan működtetni?

Jelenleg azt szeretném hogy a háznak egyes elemeit erről vezérelném a neten keresztül. Eleve halott ötlet? Keressek más lehetőséget?

A PLC belső szerkezetét nem ismerem. Gondolom azt is egy IC vezérli, tehát ott is meg van oldva a védelem.
Avatar
Robert
Elektronbűvölő
Hozzászólások: 10213
Csatlakozott: 2005. december 9. péntek, 7:00

Re: Mit ajánlanátok?

Hozzászólás Szerző: Robert »

- Az I/O lábai védtelenek - zavar bemehet.
- Tápfesz nem védett sem a túláram/túlfesz ellen, sem a impulzus/induktív zavarok ellen.
- Chip BOD (BrownOut) nincs bekapcsolva
- WatchDog nincs implementálva az Arduinoba; Diecimila esetén a bootloadere "megfagy" WD után.
- Fordító memóriaellenőrzés/memóriakezelése nem kontrollált (túlcsordulás, veremkezelést nem ellenőrzöd)

Minthogy mikrokontroller, így ezek mind belerakhatóak, csak oda kell rá figyelni.
kukuri
Bitmanipulátor
Hozzászólások: 132
Csatlakozott: 2014. január 20. hétfő, 12:50

Re: Mit ajánlanátok?

Hozzászólás Szerző: kukuri »

Robert írta:- Az I/O lábai védtelenek - zavar bemehet.
- Tápfesz nem védett sem a túláram/túlfesz ellen, sem a impulzus/induktív zavarok ellen.
- Chip BOD (BrownOut) nincs bekapcsolva
- WatchDog nincs implementálva az Arduinoba; Diecimila esetén a bootloadere "megfagy" WD után.
- Fordító memóriaellenőrzés/memóriakezelése nem kontrollált (túlcsordulás, veremkezelést nem ellenőrzöd)
A megoldások amire én gondoltam.
1. optocstolók használata.
2. Eleve egy jó minőségű táp használata ami már tartalmaz védelmet.
3. Esetleg egy másik mikrovezérlővel lehetne alacsony feszültségnél a RESETET bekapcsolni és tartani.
4. Ugyanúgy mint az előbb csak ha a számláló nincs időben nullázva akkor RESET indítása.
5. Erre most hirtelen nincs lövésem.

Sejtésem szerint leírod hogy mi miért nem alkalmazható megoldás. :)

Nyilván egy ilyen rendszer többe kerül mint egy sima arduino. Ellenben még így is jóval olcsóbb lehet mint egy PLC eszköz megvásárlása.
Avatar
csabeszq
Bitfaragó
Hozzászólások: 678
Csatlakozott: 2012. szeptember 5. szerda, 6:00

Re: Mit ajánlanátok?

Hozzászólás Szerző: csabeszq »

Érdemes lehet úgy elkészíteni a hardvert, hogy probléma esetén se csináljon hatalmas gázt. Akkor nem kell a 7/24 sem.

Ha például automata öntözőrendszert csinálsz és nem akarod, hogy 2 hét szabadság után minden meg legyen dögölve, akkor nem egy, hanem két Arduino-t raksz be, ezek meg egymást ellenőrzik. Ha valamelyik megpusztul, akkor küldenek e-mailt, vagy SMS-t.
kukuri
Bitmanipulátor
Hozzászólások: 132
Csatlakozott: 2014. január 20. hétfő, 12:50

Re: Mit ajánlanátok?

Hozzászólás Szerző: kukuri »

csabeszq írta:Érdemes lehet úgy elkészíteni a hardvert, hogy probléma esetén se csináljon hatalmas gázt. Akkor nem kell a 7/24 sem.
Erre is gondoltam hogy ha semmi vezérlés sincs akkor legyen egy olyan állapot ami nem okozhat gondot. Ezt minden vezérlés nélkül akár relékkel is meg lehet oldani. Esetleg szebben NAND kapukkal ami ha látja hogy nem működik a vezérlő akkor az összes kimenetet beállítja egy alapértelmezett állapotba.

A két vezérlő is felmerült hogy ha az egyik megadja magát akkor átveszi a szerepet. Így már kezd összetettebbé válni a feladat. :)
Avatar
csabeszq
Bitfaragó
Hozzászólások: 678
Csatlakozott: 2012. szeptember 5. szerda, 6:00

Re: Mit ajánlanátok?

Hozzászólás Szerző: csabeszq »

Ezt minden esetben meg kell tenned, akkor is, ha nem kell 7/24.

Amikor az AVR RESET-el, akkor elengedi az összes lábat és mindegyik lebeg.
Ha házi készítésű pokolgépet csinálsz, akkor érdemes fel/lehúzó ellenállásokat berakni, hogy csak a kívánt időpontban robbanjon a szerkezet, ne felprogramozás alatt. :)
Avatar
csabeszq
Bitfaragó
Hozzászólások: 678
Csatlakozott: 2012. szeptember 5. szerda, 6:00

Re: Mit ajánlanátok?

Hozzászólás Szerző: csabeszq »

-- dupla --
kukuri
Bitmanipulátor
Hozzászólások: 132
Csatlakozott: 2014. január 20. hétfő, 12:50

Re: Mit ajánlanátok?

Hozzászólás Szerző: kukuri »

Üdv! Gondolkodok megint a dupla arduinon. A biztonságosabb működés miatt betennék 2db arduinot a rendszerbe. Hogyan tudnám a hibásan működő vezérlőt leválasztani? Van olyan chip amivel ez megoldható? Olyasmire gondolok mint az alternatív villanykapcsoló. Mert azt még megtudnám oldani hogy egy másik vezérlővel figyelni a fő mikrovezőrlőt, és ha gond van akkor újraindítás. De mi van ha meghibásodik a vezérlő? Akkor nem elég újraindítani.Ebben az esetben átvehetné a szerepet a 2. vezérlő.
Vagy ez annyira ritka hogy nem érdemes vele foglalkozni?
vargham
Chipgyilok
Hozzászólások: 308
Csatlakozott: 2014. január 8. szerda, 8:32

Re: Mit ajánlanátok?

Hozzászólás Szerző: vargham »

kukuri írta:
Robert írta:- Az I/O lábai védtelenek - zavar bemehet.
3. Esetleg egy másik mikrovezérlővel lehetne alacsony feszültségnél a RESETET bekapcsolni és tartani.
4. Ugyanúgy mint az előbb csak ha a számláló nincs időben nullázva akkor RESET indítása.
Mindkét megoldás létezik hardveresen, egy áramkörön belül: watchdog IC vagy CPU supervisor IC.
Figyeli a tápot, és addig resetben tartja az MCU-t, amíg nem stabilizálódott.
Opcionálisan reseteli az MCU-t, ha az rendszeres időközönként nem rángatja meg a "hé itt vagyok, élek" lábat.

Példák:
http://www.microchip.com/wwwproducts/De ... ct=MCP1321
http://www.ti.com/lsds/ti/power-managem ... rview.page
Válasz küldése