Sari la conținut
ELFORUM - Forumul electronistilor

Arduino, pro şi contra


MifTy

Postări Recomandate

Bun, deci un incepator care vrea sa programeze Atmel sa zicem, ce ar trebui sa cumpere:

 

microcontroller Atmel + quartz + componente pasive + conectori + circuit de alimentare-stabilizare + placa circuit imprimat + etc, etc.

Sa piarda 2 zile sa expuna, corodeze, lipeasca piese, apoi poate programa .... 

Daca totul iese bine si nu a gresit undeva ca doar este incepator.

Poate ca jumatate din cei de pe forum nici nu au sculele sau indemanarea necesara sa lipeasca un smd sau un conector usb.

 

Varianta 2: se cumpara un Arduino, clona chinezeasca, uzat sau chiar nou, se porneste computerul si se scrie primul program. Are interfata seriala USB daca vrea sa transmita ceva la computer sau invers, are stabilizator de tensiune incorporat, are deja un led daca vrea sa clipeasca.

 

Va dati seama este ca si cum pe un forum de biciclete unul novice intra si spune sa imi iau cutare bicicleta si unii raspund nu... nu este bine asa, caci daca vrei sa mergi pe bicicleta trebuie neaparat cadru din fibra de carbon, schimbator nu stiu ce serie, frane de tipul x si trebuie neaparat sa asamblezi propria bicicleta daca vrei sa iasa bine, lucruri perfect adevarate dar care pentru un incepator nu sunt necesare. 

 

Dar nu numai pentru primele experiente.

Eu am fost pus in situatia de a hrani pestii din acvariu pentru ca a trebuit sa plec urgent de acasa pentru cateva zile. Nu am avut nici timpul necesar sa dau o raita prin magazine sa cumpar un hranitor automat. Ce am facut ? Am luat un Arduino, un alimentator de 9V, un servo, o cutie cilindrica. Am lipit cutia pe servo, am dat o gaura in cutie, am prins servo cu un cleste din acela pentru presat, pe marginea acvariului, am scris cateva linii de program, in limbaj arduino caci nu trebuia decat sa scriu servo la nu stiu ce pin, delay cateva secunde, servo inapoi la zero, delay cateva ore, repeta. Timpul in care am scris acest program ar fi cam timpul in care se deschide AVRstudio pe computerul meu dedicat pentru electronica, un laptop nu foarte performant.

La intoarcere, nu ma asteptam sa functioneze pentru ca se putea intampla orice, ori sa cada servo in apa, ori sa curga toata mancarea la primele rotatii si apoi sa nu mai fie mancare in cutie, ori sa se infunde gaura cu mancare sau chiar sa se blocheze Arduino pentru cine stie ce motiv dar nu.... inca functiona si pestii inotau intr-o apa cam murdara dar erau bine si am avut dupa aceea cu calm timp sa ma duc la magazin sa cumpar un produs deja facut care costa chiar mai putin decat un Arduino.

Editat de one
Link spre comentariu

pentru arduino ide iti trebuie doar un atmega328 (sau mai mare) , un oscilator si doi condensatori de 22pF , 5 fire si un usbasp ca oricum o sa trebuiasca.

daca foloseste un attiny85, nu-i mai trebuie decat 5 fire si usbasp..

sursa...are usbasp-ul. dar costa un fir in plus.

poate programa si fara breadboard daca chiar...

Link spre comentariu

Eu am zis. Si numesc coding felul asta de programare. Nu e insa definitia mea, ci devine un trend in industrie.Programming e procesul prin care se transfera in procesor programul compilat.

Link spre comentariu

alt punct de vedere.sau puncte! :d

http://vpapanik.blogspot.ro/2012/08/arduino-thank-you-and-bye-bye.htmlşi apropo, motivul principal pentru care am pornit discuţia e destul de simplă: ok, "înveţi programare" pe Arduino, dar asta nu înseamnă că înveţi programare pe orice avr, ci NUMAI pe cel pe care îl foloseşte arduino!timp în care dacă înveţi întâi să programezi un avr oarecare în asm şi apoi în c, mai mult de jumătate din cunoştinţele respective îţi vor folosi atunci când ai să treci, de voie sau nevoie, la un alt tip de avr.şi apropo, shieldurile alea credeţi să se pot folosi NUMAI cu arduino???serios, poate mă supăr şi le folosesc cu un z80.sau un raspberry... sau un at90s1200 (chiar am o asemenea antichitate! :d ), sau un 386! :)a ajuns o platformă de evaluare să conteze mai mult decât microcontrollerul pentru care a fost făcută... genial! :)))))))

Link spre comentariu

Arduino este atat:

- un mediu hardware de dezvoltare care contine si un microcontroler

- un pseudo "limbaj" grefat pe un IDE

 

Ca si mediu de dezvolatare HW, asa cum s-a explicat anterior, ofera o modalitate rapida de implementare a algoritmilor fara a mai trece prin constructia montajului. Este o placa de dezvoltare ca oricare alta, bazata pe un microcontroller ATMEL asa cum sunt multe alte placi de dezvoltare/evaluare (toti producatorii de controllere au asa ceva). Prototipezi pe aceasta placa, implementezi ulterior in produsul final cand e gata proiectul. Punct.

 

Ca si pseudo limbaj / IDE este destul de limitat desigur dar ofera un univers de solutii (librarii, functii). Le folosesti daca vrei, nu le folosesti daca asta este ceea ce vrei. Ele sunt acolo. Vrei sa programezi in C, "be my guest". Te deranjeaza functiile setup() si loop(), nu le folosi. Vrei sa apelezi registrii direct (port manipulation etc) esti liber sa o faci.

 

Arduino este si pentru avansati si pentru incepatori. Este o unealta care ofera rezultate functie de cel care o utilizeaza.

Intr-un final, in programare nu hardware-ul folosit sau IDE-ul sau limbajul este important ci ce se gaseste in teasta. Inteligenta este descrisa si prin capacitatea de a forma, implementa algoritmi.

Ca ii implementezi cu Arduino sau cu altceva, nu conteaza,  si aceasta ramane esenta.

Editat de mars01
Link spre comentariu

de ce tot legati Arduino IDE de Arduino UNO sau alta placa de dezvoltare ?

ArduinoIDE este sa-i zicem un limbaj. Asa cum o fi el, un reinterpretor, e limbaj.

Unul destul de prietenos. Dar poti scrie nu doar placi Arduino , poti scrie ce AVR vrei direct hex pe isp daca vrei.

Asta nu conteaza ?

Editat de Vizitator
Link spre comentariu

de ce tot legati Arduino IDE de Arduino UNO sau alta placa de dezvoltare ?

ArduinoIDE este sa-i zicem un limbaj. Asa cum o fi el, un reinterpretor, e limbaj.

Unul destul de prietenos. Dar poti scrie nu doar placi Arduino , poti scrie ce AVR vrei direct hex pe isp daca vrei.

Asta nu conteaza ?

Sunt useri care amesteca notiunile sau fac conexiuni "ciudate" sa le spun.

Adevarul este ca o placa de dezvoltare Arduino poate fi "incarcata" cu un firmware realizat, sa zicem, in Visual Studio, Atmel Studio, asm sau BASCOM, insa fara a folosi bootloader-ul din dotare.

La fel de bine poti programa - de exemplu - un ATMega 1284 cu un firmware realizat cu IDE-ul Arduino, sau de ce nu, un microcontroller ARM (Cortex M0 sau Cortex M3) sau Intel si tot fara a te folosi de facilitatea oferita de bootloader-ul Arduino.

Concluzia a tras-o userul mars01 la sfarsitul postarii sale si sunt de acord cu afirmatia.

Link spre comentariu

pentru arduino ide iti trebuie doar un atmega328 (sau mai mare) , un oscilator si doi condensatori de 22pF , 5 fire si un usbasp ca oricum o sa trebuiasca.

daca foloseste un attiny85, nu-i mai trebuie decat 5 fire si usbasp..

sursa...are usbasp-ul. dar costa un fir in plus.

poate programa si fara breadboard daca chiar...

Ca bine zici. Deci iti trebuie un USB->UART + un Atmel si gata ar facut Arduino ? Evident cu bootloader.

 

Ce USB->UART stiti sa merga si pe Linux ? Ubuntu 14. Si de unde il cumpar daca vreti imi dati pe PM.

Nu vreu sa il construesc din integratul 232, vreau sa il cumpar gat facut.

 

Arduino IDe are unde avantaje. Gaseti la fel de usor varinata pentru Windows ca si cea pentru Linux.

De exemplu MikroC pe Linux........Sau MPLab pe Linux...mai greu.

 

Ba chiar si pe telefon poti instala compilator + programator de Arduino:

https://play.google.com/store/apps/details?id=name.antonsmirnov.android.arduinodroid2&hl=en

Deci ai compilator pe Linux, Windows si Android (bine ca si Android-ul e tot 'un fel' de Linux)

La fel de bine poti programa - de exemplu - un ATMega 1284 cu un firmware realizat cu IDE-ul Arduino, sau de ce nu, un microcontroller ARM (Cortex M0 sau Cortex M3) sau Intel si tot fara a te folosi de facilitatea oferita de bootloader-ul Arduino.

Concluzia a tras-o userul mars01 la sfarsitul postarii sale si sunt de acord cu afirmatia.

Adica fara bootloader sau cu alt bootloader care nu e facut de Arduino ?

Link spre comentariu

merge si cu USB->UART dar daca nu ai nevoie sa citesti in consola, mai bine direct ISP(usbasp), ca sa nu fi dependent de bootloaderul lor.

 

Booloader-ul are rost doar daca vrei sa scrii uC pe serial(UART/FTDI). in rest sta degeaba acolo in uC, asa ca ignorati-l ca nu are atata importanta in viata reala, dincolo de placa de dezvoltare.

 

atemga328 sau alt uC avr e firesc sa nu vina cu bootloader preincarcat, si atunci ai nevoie de ISP/JTAG ...

dar daca te limitezi la 328 deja scris, merge UART, direct din arduino ide.

eu as prefera prin ISP, pentru ca poti avea acces si la fuse, esti mai aproape de realitate ca sa zic asa cu un pas.

arduinoIDE creeaza HEX in locatia "%temp%build<xxxxxxxxxxxxxxx>.tmp<program>.cpp.hex"

 

nu zic, si din arduinoide poti schimba chestii pe la fuse, dar iti trebuie un pic de configurari custom pe acolo..

arduinoIDE merge acum pe: windows, linux, macos;  merge si pe android si openwrt dar mi se pare o bajocura.

eu personal m-am oprit la v1.0.6, pentru ca mai departe a avut loc despicarea firului in patru la ei si nu prea imi place noua ideeatie a lor

Editat de Vizitator
Link spre comentariu

Ce USB->UART stiti sa merga si pe Linux ? Ubuntu 14. Si de unde il cumpar daca vreti imi dati pe PM.

Nu vreu sa il construesc din integratul 232, vreau sa il cumpar gat facut.

 

 

Pai si ce te opreste sa il cumperi gata facut  cu FT232 ?

 

Ar mai fi si  CP2102  exista pe ebay, eu am cumparat, costa putin.

http://www.ebay.com/itm/CP2102-USB-2-0-to-TTL-UART-Module-6Pin-Serial-Converter-STC-Replace-FT232-Module-/381374541932?hash=item58cbb1b06c:g:BxQAAOSwQiRUm-ND

Editat de one
Link spre comentariu

Cred ca le gasesti si pe site-uri de anunturi din RO (doar un search dupa "FT232 Arduino" si ai rezultate pe oleics de ex).

 

Iar chestia cu asteptatul este relativa. Am un colet pe care magarii l-au trimis abia dupa o luna dupa ce am platit (seller Aliexpress) si aici este smechereala care enerveaza, ideea ca fac aceasta pentru ca ei cred ca scapa. Dar daca intarzie si numai o zi, i-am papat.

Altfel, dureaza cat dureaza. Daca ma arde si este urgent, platesc si cumpar din RO. Sunt vanzatori care au adaosuri decente.

Link spre comentariu

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum
×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări