Oggi volevo lasciare una piccola recensione su www.pcbway.com che mi fornisce le PCB che utilizzo per i miei progettini
Le schede vengono progettate direttamente da me con Fritzing (ho provato Eagle e Kicad ma mi trovo meglio con fritzing) e si esportano in formato gerber. Se andate sulla loro homepage potete fare direttamente una richiesta automatica per conoscere il prezzo delle vostre schede.
E' tutto immediato, basta specificare cose come lo spessore, dimensione, quantità e in automatico viene calcolato il prezzo finale delle PCB.
E' molto comodo, anche perchè io non ho voglia di inviare delle email a produttori che poi si sono rivelati costosissimi.
Devo dire che invece i loro prezzi sono imbattibili. mi hanno orpreso motlo in quanto a qualità, efficenza e velocità in tutto. Ogni singola parte del lavoro di produzione è monitorizzato e quindi ci permettono di sapere direttamente come sta andando il lavoro.
Ecco alcune immagini di due mie schede che ho fatto recentemente:
Devo dire che sono molto soddisfatto.
Le saldature vengono molto bene, specialmente con una stazione saldante ad aria calda.
Devo dire che, se dovete farvi fare delle PCB, pcbway è un ottimo produttore.
Passo e chiudo.
Visualizzazione post con etichetta atmega328. Mostra tutti i post
Visualizzazione post con etichetta atmega328. Mostra tutti i post
mercoledì 25 febbraio 2015
lunedì 12 gennaio 2015
Si ricomincia!
Eccomi quà, di nuovo in forma!
E' riiniziata la scuola, sono passate le vacanze di natale...
Approposito... Buon anno!
Di recente mi sono messo a partecipare un po' alle discussioni sul forum di arduino nella sezione italiana e indovinate un po'... Il mio codice che avevo lasciato tempo fa è servito! :D
In realtà l'ho modificato un po' perchè serviva solo per il seriale, niente LCD, quindi l'ho ridotto e migliorato!
Tutto quà. Non è molto diverso e l'ho commentato il più possibile!
Alla prossima!
E' riiniziata la scuola, sono passate le vacanze di natale...
Approposito... Buon anno!
Di recente mi sono messo a partecipare un po' alle discussioni sul forum di arduino nella sezione italiana e indovinate un po'... Il mio codice che avevo lasciato tempo fa è servito! :D
In realtà l'ho modificato un po' perchè serviva solo per il seriale, niente LCD, quindi l'ho ridotto e migliorato!
Tutto quà. Non è molto diverso e l'ho commentato il più possibile!
Alla prossima!
lunedì 23 giugno 2014
Estate!
E' da un po' che non scrivo, e mi scuso per questo, ma sono rimasto molto indaffarato in alcuni progetti su cui sto lavorando
Quindi, per aggiornare un po' la situazione, iniziamo con...
Arduino: al momento sto lavorando ad un progetto piuttosto complesso di cui preferirei non dire troppo... per il momento posso solo dire che è un gioco e che c'è da divertirsi parecchio, ma nient'altro.
Per alcuni primi test infatti ho voluto farmi produrre qualche PCB per poter costruire dei prototipi e per ora non sono venuti malissimo:
Ho lo spazio per reggere il prcessore e gli NRF che avevo ricevuto qualche tempo fa!
Poi un giorno dovevo iniziare un altra stampa con la stampante 3D e accade l'inevitabile: si rompono i "giunti" improvvisati con della guaina termorestringente..
Devo essere sincero: non mi aspettavo che sarebbero durati così tanto, dato che è da Dicembre che sono lì. Non ho una foto ma posso spiegarvi più o meno dove si trovano:
la mia stampante (una prusa i3) per fare i vari strati deve sollevare l'estrusore della plastica che si regge su due barre filettate. Le due barre sono fissate all'asse Z (il pezzo dell'estrusore) attraverso due pezzi stampati in cui è inserito un dado che permette di alzare o abbassare il tutto.
Per poter fare ciò, è necessario avere due motori che girano le barre che sono giuntate ad esso con il metodo sopra citato. Ora quindi mi tocca (ma non è proprio malissimo) comprare due giunti seri: ne vendono su ebay ma sembrano essere inesistenti in tutti i ferramenta che ci sono quà ad Asti (per ora ho cercato in 10 negozi)...
Tra poco arriva la continuazione !
Quindi, per aggiornare un po' la situazione, iniziamo con...
Arduino: al momento sto lavorando ad un progetto piuttosto complesso di cui preferirei non dire troppo... per il momento posso solo dire che è un gioco e che c'è da divertirsi parecchio, ma nient'altro.
Per alcuni primi test infatti ho voluto farmi produrre qualche PCB per poter costruire dei prototipi e per ora non sono venuti malissimo:
Ho lo spazio per reggere il prcessore e gli NRF che avevo ricevuto qualche tempo fa!
Poi un giorno dovevo iniziare un altra stampa con la stampante 3D e accade l'inevitabile: si rompono i "giunti" improvvisati con della guaina termorestringente..
Devo essere sincero: non mi aspettavo che sarebbero durati così tanto, dato che è da Dicembre che sono lì. Non ho una foto ma posso spiegarvi più o meno dove si trovano:
la mia stampante (una prusa i3) per fare i vari strati deve sollevare l'estrusore della plastica che si regge su due barre filettate. Le due barre sono fissate all'asse Z (il pezzo dell'estrusore) attraverso due pezzi stampati in cui è inserito un dado che permette di alzare o abbassare il tutto.
Per poter fare ciò, è necessario avere due motori che girano le barre che sono giuntate ad esso con il metodo sopra citato. Ora quindi mi tocca (ma non è proprio malissimo) comprare due giunti seri: ne vendono su ebay ma sembrano essere inesistenti in tutti i ferramenta che ci sono quà ad Asti (per ora ho cercato in 10 negozi)...
Tra poco arriva la continuazione !
Etichette:
arduino,
Asti,
atmega328,
dado,
ferramenta,
giutno,
guaina termorestringente,
pcb,
prototipo,
rotto,
stampa,
stampante 3D
venerdì 30 maggio 2014
E' ora di rispolverare il codice!
| Funziona! |
Anche se poi non l'ho fatto... ma la tentazione era forte
NOTA: il codice è stato aggiornato. Se vuoi vedere la versione a cui si riferisce questo post vai quì
Iniziamo ad osservare il codice.
All'inizio, come è solito fare includo le librerie che uso; in questo caso solo la liquid crystal è necessaria.
L'LCD si trova collegato sui pin 7, 8, 9, 10, 11, 12.
Con delle variabili indichiamo i pin dei sensori analogici, con mis indico un numero di cicli dopo il quale aggiorniamo i valori delle letture (così da non aggiornare troppo spesso l'LCD che altrimenti diventa illeggibile)
vrif è una variabile che utilizziamo per indicare il voltaggio di riferimento (1.1 V è perfetto perchè molto preciso). Più avanti vedremo dove è stato impostato il valore esterno.
Se vi chiedete a cosa serve un array di byte, vi consiglio di andarvi a vedere la libreria Liquid Crystal; è molto utile per creare caratteri che non esistono. Un tool online per disegnare questi caratteri su schermi con "quadretti" da 5*7 pixel o 5*8 è su questo sito. Mi è stata molto utile varie volte. (il segno del grado non esiste infatti!)
Vedremo più avanti come stampare un carattere creato da noi sull'LCD.
Passiamo al setup.
Il pin 13, dato che a me dà fastidio tenerlo sempre acceso, lo spengo fin dall'inizio del setup.
Ecco: analogReference(INTERNAL); serve per impostare il tipo di riferimento per il voltaggio analogico interno. Vi sono vari valori che possiamo impostare:
- DEFAULT: viene impostato il valore di base: 5V per le schede arduino a 5V e 3.3 per quelle a 3.3V
- INTERNAL: è una riferimento interna, equivalente a 1.1V sull' ATmega168 o ATmega328 (Arduino UNO e MICRO) and 2.56V sull' ATmega8. Non si può utilizzare questo parametro su un arduino MEGA (ATmega2560 o 1280)
- INTERNAL1V1: riferimento a 1.1V SOLO per il MEGA
- INTERNAL2V56: riferimento a 2.56V SOLO per il MEGA
- EXTERNAL: il voltaggio applicato al pin AREF ( solo da 0 a 5V ) è utilizzato come riferimento.
- Dopo aver cambiato il riferimento i primi valori restituiti da analogRead() potrebbero essere "sporchi"
- Se colleghiamo il pin AREF a un voltaggio di riferimento e poi non impostiamo l'analog reference ( prima di utilizzare analogRead() ) o passiamo per il pin un voltaggio superiore a 5 volt o inferiore a 0 volt, manderemo in corto l'AREF e il riferimento interno attivo, danneggiando irreparabilmente il vostro processore.
Se applichiamo 2.5V all'AREF, 2.5 * 32 / (32 + 5) = ~2.2V che il processore riceverà.
Continuando
A questo punto finiamo la funzione setup stampando alcune cose a schermo in seriale (dopo aver utilizzato Serial.begin(baudrate) ) e sull'LCD (indicando la dimensione, prima delle colonne, 20, e poi delle righe, 4).
Il void loop()
Innanzitutto incrementiamo il contatore delle misurazioni ( mis++ ) e poi aggiungiamo alle attuali letture salvate nelle variabili media1 e media2 i valori conversi in gradi Celsius attraverso l'utilissima funzione readTemp() che accetta come parametro il valore del pin analogico che si vuole analizzare.
Analizziamo quindi la funzione:
il calcolo è semplice: moltiplichiamo 100 per il valore di riferimento e per una lettura analogica del sensore. Il tutto poi è diviso per 1024, il valore massimo + 1 leggibile da un processore dell'UNO (il DUE può dare il doppio della precisione, 2048 - 1 valori. -1 per includere lo 0)
Se abbiamo effettuato 5 letture, dividiamo i valori per 5 per effettuare la media; dopodichè li stampiamo sull'LCD e in Seriale se è collegato.
Non dimentichiamo di resettare mis e le medie dei valori.
Tutto quà, non era neanche troppo lungo :)
Spero che vi sia interessato; non sapete quanto tempo mi ci è voluto per ridocumentare tutto x)
Il codice che lascio quà sopra è utilizzabile da chiunque; basta che non sia per opere commerciali, che per definirlo proprio abbiate apportato modifiche grosse allo sketch e che lo condividiate in rete con gli stessi termini.
Alla prossima con un nuovo progetto!
Etichette:
arduino,
atmega328,
caratteri,
codice,
contrasto,
elettronica,
funzione,
grafica,
leonardo,
LM35,
loop,
luminosità,
mega,
progetto,
seriale,
setup,
Termometro,
uno,
void,
voltaggio
Ubicazione:
14100 Asti AT, Italia
Iscriviti a:
Post (Atom)



