Pages: 1 ... 15 16 [17] 18 19 ... 21   Go Down
Author Topic: Pico85 SMD - La prima board Arduino compatibile di Gioblu Robotics  (Read 16078 times)
0 Members and 1 Guest are viewing this topic.
Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 325
Posts: 22498
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Bisogna modificare quelle righe che ho segnalato in modo da adattarle all'Attiny, ma io non sono così addentro al C per poter modificare quelle macro. In teoria, sapendo come fare, si tratta di un lavoro molto semplice.
Logged


Milan
Offline Offline
Edison Member
*
Karma: 2
Posts: 1128
gioblu.com
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

ciao raga! Date un occhio:



La board Pico85 smd si comporta molto bene a 16mhz. Direi che per robot rover semplici basta  smiley-mr-green smiley-mr-green
In questa configurazione ci sono solo 3 dei 5 pin occupati, da 2 servi e dal LED utilizzato come sensore. (L'emettitore è sempre acceso).
Per alimentare il tutto ho usato una cella 3.7v 1a connessa a Pico85 smd tramite stepup 3.7v -> 5v
Come vedete i motori sono microservi modificati a rotazione continua e il sensore è un kit sensore ERER

il codice:
Code:
#include <SoftwareServo.h>

SoftwareServo left;
SoftwareServo right;
int value = 0;
int vision = 0;
float time = 0;

void setup(){
 left.attach(0);
 left.setMaximumPulse(2200);
 right.attach(1);
 right.setMaximumPulse(2200);
}



void loop() {
  SoftwareServo::refresh();
  left.write(11d0);
  right.write(0);
  vision = analogRead(1);
  if(vision >= 180) { if(vision - 150 > 5) { time = millis(); while (millis() - time < 600) {left.write(180); right.write(180); SoftwareServo::refresh(); }}
                                      else { time = millis(); while (millis() - time < 600) {left.write(0); right.write(0); SoftwareServo::refresh(); }}}
}

Visti i due pin liberi mi piacerebbe provare a connettere un altra board pico via i2c a quella presente per poter comunicare con i modulini a basso costo 433 mhz verso un terzo modulo logico connesso a un computer. Sarei curioso di vedere se è possibile comunicare a un duemilanove alcuni dati in real time, per esempio il feedback dei servi, con il codice che ho scritto che abbozza l'odometria http://www.gioblu.com/tutorials/robotica/217-robot-cartesiano-e-odometria-con-arduino è possibile ottenere la posizione xy e lo spazio percorso, che a questo punto si potrebbe spedire via radio a un arduino connesso via usb al pc, e poi rendere il tutto grafico con processing.
« Last Edit: October 09, 2011, 02:08:53 am by gbm » Logged

Community robotica / programmazione Arduino
www.gioblu.com

0
Offline Offline
Full Member
***
Karma: 0
Posts: 132
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

bellina la board!
complimenti smiley
Logged

~blackout~ @ grayhats.org

Monselice PD Italy
Offline Offline
Faraday Member
**
Karma: 26
Posts: 5492
фон Крыса
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Giò non è che potresti mettere la riga per AVR dude in cui setti i fuse così il pico che metterò nel prototipo di sonda lo faccio andare a 16Mhz...
Logged

Se corri veloce come un fulmine, ti schianterai come un tuono.

0
Offline Offline
Faraday Member
**
Karma: 45
Posts: 5789
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

IN allegato la Tabella dei consumi completa:
menny quale modalita' sleep hai usato per i test ?
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Milan
Offline Offline
Edison Member
*
Karma: 2
Posts: 1128
gioblu.com
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ecco la stringa necessaria per settare i fuses a 16mhz.
Va lanciato avrdude da terminale

Code:
./avrdude -P /dev/ttyACM0 -C ./avrdude.conf -U lfuse:w:0xf1:m -p t85 -c stk500v1 -b 19200
Sostituite ad ACM0 il nome della porta dell' arduino utilizzato come programmatore.

Cmq una cella da 3.7v 1A non si è scaricata in piu' di mezz'ora di test e funzionamento.  smiley-mr-green
« Last Edit: October 09, 2011, 03:10:40 am by gbm » Logged

Community robotica / programmazione Arduino
www.gioblu.com

ITALY
Offline Offline
Full Member
***
Karma: 1
Posts: 188
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao,
in win io l' ho trasformata così:
avrdude -p ATtiny85 -c stk500v1 -b 19200 -P COM3 -U lfuse:w:0xf1:m
@Gbm La trasmissione a 433 Mhz vorresti farla usando la virtualWire? Te lo chiedo perchè io avevo provato a modificare la libreria per usarla con gli ATtiny85 ma con risultati fallimentari  smiley-roll-sweat. Magari se tu ci riesci..faresti cosa gradita  smiley-lol
Logged

0
Offline Offline
Faraday Member
**
Karma: 45
Posts: 5789
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ma con ArduOpen per windows e la corretta board virtuale non si puo' fare dall'ide ?
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

ITALY
Offline Offline
Full Member
***
Karma: 1
Posts: 188
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Avevo chiesto anch' io a suo tempo ma mi era stato risposto che per settare i fuse bisogna per forza passare da avrdude.
Logged

Rome
Offline Offline
Full Member
***
Karma: 2
Posts: 186
I love Arduino
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao,
in win io l' ho trasformata così:
avrdude -p ATtiny85 -c stk500v1 -b 19200 -P COM3 -U lfuse:w:0xf1:m

Quindi per me che sono un ignorante di avrdude, è sufficiente che me lo scarichi e poi da linea di comando lancio questo comando, settando l'opportuna porta com, o devo fare altro?
Logged

Monselice PD Italy
Offline Offline
Faraday Member
**
Karma: 26
Posts: 5492
фон Крыса
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ecco la stringa necessaria per settare i fuses a 16mhz.
Va lanciato avrdude da terminale

Code:
./avrdude -P /dev/ttyACM0 -C ./avrdude.conf -U lfuse:w:0xf1:m -p t85 -c stk500v1 -b 19200
Sostituite ad ACM0 il nome della porta dell' arduino utilizzato come programmatore.

Cmq una cella da 3.7v 1A non si è scaricata in piu' di mezz'ora di test e funzionamento.  smiley-mr-green
Perfetto a breve comincerò la costruzione della micro sonda smiley-razz le mie al litio però sono da 220mA o da 1A vedrò quanto pesail tutto poi decido smiley

Ale devi scaricare AVR dude lo installi apri il prompt dei comandi lanci avr dude e poi metti questa stringa...
Logged

Se corri veloce come un fulmine, ti schianterai come un tuono.

ITALY
Offline Offline
Full Member
***
Karma: 1
Posts: 188
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quote
Insert Quote
Quote from: DevonMiles on Today at 08:24:19 PM
Ciao,
in win io l' ho trasformata così:
avrdude -p ATtiny85 -c stk500v1 -b 19200 -P COM3 -U lfuse:w:0xf1:m

Quindi per me che sono un ignorante di avrdude, è sufficiente che me lo scarichi e poi da linea di comando lancio questo comando, settando l'opportuna porta com, o devo fare altro?
Alegiaco l' avrdude ce lo hai già quando installi l' IDE di arduino, è nella cartella \hardware\tools\avr\bin
Logged

0
Offline Offline
Faraday Member
**
Karma: 45
Posts: 5789
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Quando con arduino sui carica il bootloader su un altro micro, sui settano anche i fuse. Forse il problema e' che l'85 non ha il bootloader
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

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

E' per questo infatti che non si può usare l'IDE per flashare i fuse sull'Attiny85.
Esiste un bootloader "finto" che altro non è che un file che non flasha nulla e che servirebbe per aggirare questo limite dell'IDE ma a me non ha mai funzionato perciò ho iniziato ad usare avrdude da terminale.
Logged


0
Offline Offline
Faraday Member
**
Karma: 45
Posts: 5789
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

wewe, e allora questo merita un test di testato smiley
hai un link ?
Logged

- [Guida] IDE - http://goo.gl/ln6glr
- [Lib] ST7032i LCD I2C - http://goo.gl/GNojT6
- [Lib] PCF8574+HD44780 LCD I2C - http://goo.gl/r7CstH

Pages: 1 ... 15 16 [17] 18 19 ... 21   Go Up
Jump to: