Pages: [1] 2   Go Down
Author Topic: Cambiare code Arduino  (Read 1105 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
God Member
*****
Karma: 2
Posts: 536
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ciao a tutti.... volendo iniziare con il controllo e la creazione di un cnc ho cercato su internet un po' di cose e ho trovato questo progetto, che per iniziare mi sembra carino. http://www.instructables.com/id/Pocket-laser-engraver/?ALLSTEPS
Però, leggendo i passi da fare, mi è venuto un dubbio...
Nello step in cui spiega come preparare arduino, dice di scaricare un Hex che dovrebbe essere un nuovo code per arduino ("Grbl "). E per farlo dovrei usare XLoader.
Quello che vorrei capire è che se faccio questo, dopo come posso fare per ripristinare il code originale di arduino ?
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 313
Posts: 21624
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

"Code" sta per "codice" in inglese.
Nell'Arduino il microcontrollore Atmega328 ha la memoria suddivisa in 2 parti: una piccola parte riservata ad accogliere il bootloader ed una parte più grande destinata ad accogliere i programmi dell'utente, che in Arduino (e Wiring) sono chiamati sketch.
Normalmente l'upload di un programma dall'IDE all'Arduino avviene proprio tramite il bootloader, che altro non fa se non mettersi in ascolto sulla seriale e scrivere sulla flash lo sketch in arrivo.

Se scrivi sul tuo microcontrollore un file in formato Hex stai scrivendo un programma già compilato e pronto per essere memorizzato sulla Flash. Se l'operazione prevede anche la cancellatura del bootloader, poi non puoi più tornare indietro senza usare un altro Arduino perché senza bootloader l'Atmega328 non puoi usarlo sull'Arduino.
Se non sei sicuro che la flashatura di quel file Hex non alteri il bootloader, il consiglio che ti do è quindi quello di acquistare un chip Atmega328 senza bootloader e scrivere l'Hex su quel chip (c'è la guida del Menniti per questo). In questo modo potrai sempre sfilarlo e rimettere sull'Arduino il chip col bootloader.

Logged


Offline Offline
God Member
*****
Karma: 2
Posts: 536
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Grazie dell' esauriente spiegazione Leo, quindi ora vedo di procurarmi un Atmega328 (magari anche 2  smiley-lol )
E poi proverò, sembra che quel codice non sia altro che un interprete di comandi che arrivano via seriale...

Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 313
Posts: 21624
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Grazie dell' esauriente spiegazione Leo, quindi ora vedo di procurarmi un Atmega328 (magari anche 2  smiley-lol )
E poi proverò, sembra che quel codice non sia altro che un interprete di comandi che arrivano via seriale...


Ma è fornito solo sotto forma di compilato oppure c'è anche il sorgente?
Logged


Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 103
Posts: 6591
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Il sorgente è qui --> https://github.com/grbl/grbl
Ma non è possibile compilarlo con l'IDE di Arduino a meno di pesanti modifiche al codice.

Ho trovato questo --> https://github.com/grbl/grbl/issues/111
« Last Edit: November 14, 2012, 06:34:35 am by PaoloP » Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 313
Posts: 21624
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Il sorgente è qui --> https://github.com/grbl/grbl
Ma non è possibile compilarlo con l'IDE di Arduino a meno di pesanti modifiche al codice.
Sì, è scritto per essere compilato esternamente all'IDE.
Logged


0
Offline Offline
Edison Member
*
Karma: 20
Posts: 2227
Have you mooed today?
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao,
di GRBL si è parlato molto qui:
http://arduino.cc/forum/index.php/topic,127155.0.html

comunque, se apporti delle modifiche, è sufficiente un "make" per ricompilare l'hex...

GRBL è il fw utilizzato nel progetto CNC opensource Shapeoko...
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 313
Posts: 21624
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

comunque, se apporti delle modifiche, è sufficiente un "make" per ricompilare l'hex...

Il problema non era tanto nel ricompilarlo ma nel non perdere il bootloader.

Nello step in cui spiega come preparare arduino, dice di scaricare un Hex che dovrebbe essere un nuovo code per arduino ("Grbl "). E per farlo dovrei usare XLoader.
Non so cosa faccia Xloader sui fuse, ecco perché nel dubbio ho consigliato di acquistare un chip, almeno se quel programma gli cancella il bootloader è male di poco.
Logged


Offline Offline
God Member
*****
Karma: 2
Posts: 536
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Esatto, il problema non è tanto nel compilare o meno.. ma cosa va ad incidere questo codice nell' arduino.
Leo mi ha consigliato di prendere un IC a parte e mi sembra un saggio consiglio, ma visto che se ne parlato molto anche in questo forum, ben vengano tutti i consigli che mi potete dare.
Quello che vorrei iniziare a fare ora, è lo studio dei motori passo passo e il controllo di una cnc con via software e arduino

Almeno sapere se devo "sacrificare" un arduino per quel progetto  smiley-lol
Logged

Cagliari, Italy
Offline Offline
Tesla Member
***
Karma: 103
Posts: 6591
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Più che "sacrificare" direi "utilizzare".
Se vuoi lasciare montata l'elettronica della CNC un altro Atmega328 ti serve sicuramente, a meno che non sia il tuo ultimo progetto.
A questo punto potresti prendere un'altra UNO R3 oppure una Duemilanove, per risparmiare qualcosa.
Logged

Code fast. Code easy. Codebender --> http://codebender.cc/?referrer=PaoloP

0
Offline Offline
Edison Member
*
Karma: 20
Posts: 2227
Have you mooed today?
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao

Quote
Il problema non era tanto nel ricompilarlo ma nel non perdere il bootloader.

io ho avuto una arduino con GRBL montata su una macchinetta laser engraver fork-ata proprio da quella linkata nel primo post.
L'ho poi riutilizzata per altre attività senza problemi.
Chiaro che l'obiettivo è farsi un PCB con atmega328+driver+contorno

Quote
Non so cosa faccia Xloader sui fuse, ecco perché nel dubbio ho consigliato di acquistare un chip, almeno se quel programma gli cancella il bootloader è male di poco.

nulla, semplicemente serve a caricare sketch senza Arduino IDE installato - si interfaccia di fatto ad avrdude.
E' anche comodo per coloro che non son avezzi all'utilizzo della CLI, per caricare .hex.
Logged

Offline Offline
God Member
*****
Karma: 2
Posts: 536
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ahh.. benissimo, quindi tu hai già provato a fare quella macchinetta CNC.
Quindi ok, se ho ben capito, l' arduino lo posso riutilizzare per altri progetti... Ma forse l' idea di dedicare un bel Atmega al progetto non male.
@Pitusso
Visto che hai gia fatto il progettino, hai suggerimenti, info, ecc.. che mi possano aiutare per fare il progetto ?
Logged

0
Offline Offline
Edison Member
*
Karma: 20
Posts: 2227
Have you mooed today?
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ciao

Quote
Visto che hai gia fatto il progettino, hai suggerimenti, info, ecc.. che mi possano aiutare per fare il progetto ?

nessuno in particolare, se non di sperimentare relativamente al telaio.
Nell'instructables linkato usa profili in alluminio, altrove ne avevo viste in legno grezzo, altre ancora in compensato tagliato laser.
Prova con quello che hai a casa - io ne ho provate varie versioni, adesso ne ho una fatta con i pezzi del BRAL (=meccano).
Anche perchè i fori per il fissaggio dei carrelli son diversi da lettore a lettore...

Come driver ho usato degli stepstick (pololu), ma si possono utilizzare ovviamente gli EasyDriver (come nel progetto originario), oppure altri driver anche autocostruiti.
« Last Edit: November 14, 2012, 10:20:31 am by pitusso » Logged

Offline Offline
God Member
*****
Karma: 2
Posts: 536
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ahh ok... ma il tuo laser è riuscito a tagliare la carta ?
Io ho preso quello del lettore dvd e l' ho messo nel housing.. con un 3v fa un sacco di luce ... eh eh eh...
Io userò dell' aluminio e easydriver... perchè è quello che ho avanzato dal mio ultimo progetto, anche se come driver mi piacerebbe farmene uno... il problema per me sarà per il supporto dell' housing
Ma a quanti milliampere hai fatto andare il laser ?

sorry se ti sto bonbardando di domande... ma è un po' che sto vedendo sta cosa.. e tra un paio di gg parto a fare il tutto...
Logged

0
Offline Offline
Edison Member
*
Karma: 20
Posts: 2227
Have you mooed today?
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao

Quote
ma il tuo laser è riuscito a tagliare la carta ?

 smiley-roll-sweat il laser devo ancora provarlo sul campo, per ora utilizzo una matita e di fatto è un piccolo (molto piccolo) plotterino
Come housing e lente ho utilizzato il materiale presente in una stampante laser in disuso, appena ho occhiali con la debita protezione (o enclosure della macchina) monto il laser e ci gioco.

Quote
Io userò dell' aluminio e easydriver... perchè è quello che ho avanzato dal mio ultimo progetto, anche se come driver mi piacerebbe farmene uno... il problema per me sarà per il supporto dell' housing

puoi usare delle fascette di plastica e/o colla a caldo

Quote
Ma a quanti milliampere hai fatto andare il laser ?

la parte laser è da terminare, ma sinceramente penso di utilizzare un semplice LM317 con debita resistenza - una configurazione minimale.
« Last Edit: November 14, 2012, 06:21:15 pm by pitusso » Logged

Pages: [1] 2   Go Up
Jump to: