Tesina

Novembre 15, 2008 di otacon22

In occasione dell’ esame di stato che dovrò tentare di superare l’anno prossimo dovrò presentare una relazione su un argomento a scelta, attinente con il programma, in massimo tre ambiti diciplinari, che sia originale. La mia prima scelta e quella che è rimasta poi definitiva è stata quella di pensare di fare qualcosa sulle reti neurali.
Dopo essermene interessato qualche anno fa ho poi comprato il bellissimo libro di Cammarata “Reti neuronali” che ho letto in ogni sua parte attinente a ciò che mi interessa sulle reti neuronali, ho letto diverse altre cose al riguardo e ho anche sperimentato con le mie mani alcuni programmi in python per usarle.
Così ora è rimasta questa scelta: farò una tesi che sarà probabilmente intitolata “Reti neurali” e inizierò parlando della scelta dell’ argomento e a cosa servono e cosa sono a grandi linee. Poi inizierò a parlare del sistema nervoso umano, con i neuroni, assoni, dendriti e le solite cose, spiegate però abbastanza nel dettaglio.
Successivamente inizierà la trattazione puramente matematica, che andrà spiegando la struttura delle reti feed-foward e le loro formule principali, ad esempi applicativi usando formule di trasferimento semplici (come la sigmoide) e poi passerò a usare alla fine la tangente iperbolica e con l’algoritmo di propagazione inversa mostrerò come sia possibile riconoscere delle lettere scritte a mano.

Accetto suggerimenti o richieste di informazioni.

Ovviamente se tutto sarà andato a buon fine qui pubblicherò i file della tesina scaricabili per poter essere letti

Dominio.

Novembre 15, 2008 di otacon22

In occasione del mio diciottesimo compleanno del 24 Ottobre ho deciso di acquistare un nuovo dominio per il blog: ho infatti comprato un dominio .it: www.otacon22.it purtroppo per motivi tecnici non è ancora attivo. Sarà attivo a breve.

ESC 2k08 – End Summer Camp 2008

Ottobre 2, 2008 di otacon22

Hola a tutti!

È da un po’ che non scrivo, in effetti dovevo fare un post per avvisare dell’ imminente ESC: un altro meeting di hacker a cui poi ho partecipato.
Dopo la notizia dell’ hackmeeting a Palermo ho totalmente rinunciato ad andarci; più che altro per il perido, non molto per la lontananza del posto (21 ore di treno).

Però al ritorno dalle vacanze ho saputo da Arki e Accatron, vecchi conoscenti dell’ Hackmeeting 2007 mi hanno informato di questo End Summer Camp organizzato dal metro olografix.
Dunque ho informato Biohazard, Ulisse  e Winstar.
Alla fine ci siamo ritrovati come l’anno scorso solo io, Biohazard e Ulisse.

A differenza dell’ hackmeeting si è trattato di un piccolo meeting, di molte meno persone. Avevamo deciso di contribuire in qualche modo stavolta; così ulisse ha tenuto un talk sui microcontrollers(con un laboratorio abbinato) e io un piccolo laboratorio per costruire un fonera robot. Il laboratorio della fonera si è rivelato fallimentare per motivi meccanici e di alimentazione. Nessuno mi ha aiutato, però molte persone mi hanno fatto domande e si sono interessate. Ho avuto anche l’onore di incontrare il mitico De Gregorio, relatore al PyCon1 e PyCon2, che ha dato anche lui una occhiata al mio sistema python-robot-fonera .

Il posto era a San Donà di piave, in provincia di Venezia, vicino a Jesolo.
Io e Ulisse siamo arrivati insieme Venerdì 19 Settembre verso sera, mentre bio era già arrivato essendo più vicino.
Era un posto che doveva diventare tipo un museo, ma poi il progetto è stato abbandonato ed è rimasto lo stabile non finito. Così gli organizzatori lo hanno adibito per il meeting. È composto da un locale spazioso principale, che dava accesso al bagno e dove c’era un piccolo angolo bar e un tavolo stile bancarella con portatili, casse audio, luci e una batteria completa che continuavano a suonare durante la giornata.
C’era poi una sala “mensa”, che non ho visto, e la mitica sala LAN e zona talk. In effetti non era molto grande questa sala lan: c’erano svariati tavoli in legno messi in file parallele, mentre all’ ingresso della stanza c’era su un muro il telo per la proiezione delle slide dei talk.
Inutile dire che non essendoci infissi la notte era abbastnza fredda.
Al piano superiore c’era posto per dormire tranquilli, all’ esterno molta gente dormiva in tenda, però noi abbiamo dormito nella sala lan al freddo: 16°C (registrati con tester che misura temperatura verso le 2.00am). Il motivo di ciò era il fatto che avevamo portatili e svariato materiale elettronico sparso, e non potevamo dormire tranquilli senza metterlo via, e non potevamo mettere via tutta quella roba  così. Allora ho proposto di dormire a fianco al tavolo, anche per controllare i nostri possessi. Questo non perchè non mi fido della gente dell’ esc,  anzi! c’è gente più brava e più onesta di me, però il fatto è che facilmente qualcuno può arrivare dall’ esterno fingendosi visitatore e ripulire la zona di portatili…

La prima notte di Venerdì abbiamo lavorato sul robot e sistemato varie cose anche per il talk di Ulisse successivo, poi si è parlato  etc.. Alla fine siamo andati a dormire verso le 4.00. Il problema non è stato tanto il freddo, quanto l’aria che passava, dovuta alla relativa vicinanza con il mare, che crea correnti d’aria…
Il giorno dopo ci siamo attrezzati io e Ulisse per fare autonomamente colazione verso le 8.00-8.30 … io avevo messo la sveglia verso le 7.30, però Ulisse mi ha poi informato che era suonata continuamente ma non mi ero svegliato (non sò come fa Ulisse ad essere onniscente che vede e sente tutto ad ogni ora). Quindi dopo appunto questa colazione blanda a un bar vicino siamo andati con Bio sveglio al supermarket per prendere qualcosa da mangiare per mezzogiorno e sera…
Abbiamo preso pane, salumi e formaggi per fare panini semplici, poi degli ottimi biscotti al burro( presi più per utilizzare la scatola come porta componenti più che per mangiarli).

Fino a mezzogiorno circa siamo stati molto in attesa per il talk di ulisse che non cominciava più… poi alla fine li hanno spostati di qualche ora perchè tutti dormivano. Ulisse è poi finalmente riuscito a parlare al suo talk , generando anche non poco pubblico di gente che anche prendeva appunti su quello che diceva!
Dal mio canto ho stupidamente dimenticato non una ma due fonere che avevo lasciato sul tavolo a casa, pronte e formattate. Fortunatamente avevo tutto il software e un tizio molto simpatico ha gentimente acconsentito a prestarmene una sua fonera modello 2100 come “da sistemare”. Inutile dire che sono bastati pochi minuti per formattarla e mettere python tutto funzionante. I problemi sono stati altri: come al solito l’alimentazione con regolatori che scaldano fino alla morte e pic che non funzionano. Lo scopo iniziale era quello di pilotare 2 motori in digitale con un l293d. A prima vista sembra la cosa + facile del mondo, però prima di riuscire a fare qualcosa Ulisse ha dovuto flashare una ventina di volte un pic. Quando finalmente funzionava c’era un disturbo causato da interferenze dei motori sul pic, allora non si è poi più potuto fare nulla.Ulisse aveva una scheda fotoaccoppiata pronta ma non c’era modo di collegare bene i motori con i cavi etc per chiuderla dentro…. tutto per questa cagata.
Morale: MAI portare roba HARDWARE non testata o non già preparata prima.

Per il resto tutto bene: ho aiutato bio a sistemare xubuntu sul suo portatile… poi ho mostrato conky e altre cose del mio desktop a un tizio

Sabato abbiamo dormito presto verso le 2.00, il mattino ci siamo avviati in stazione salutando la gente sveglia… Ulisse per rimediare al vento del giorno prima aveva inventato un sistema tattico coprendosi da un lato con la mia valigia e poi dormendo sopra un asse di legno…

Il ritorno è stato molto faticoso, io inoltre ho avuto eccezionalmente un mal di testa esagerato( probabilmente dovuto allo scarso cibo e interminabili ore di veglia) il che mi ha meravigliato, perchè solitamente ho il mal di testa una volta l’anno circa…In treno ho tentato di dormire in diversi modi in poltrona, maggior parte del viaggio lo ho fatto dormendo

Scene da ricordare:
- Al ritorno dalla colazione di sabato io e Ulisse sentiamo russare FORTISSIMO anche da fuori dell’ edificio; meravigliati entriamo nella sala principale, dove dei tizi sogghignanti avevano piazzato un microfono amplificato molto forte a uno che stava dormendo russando. Il risultato era che si sentiva russare fortissimo, e la gente a fianco continuava a ridere sottovoce per non svegliare… Poi il tizio si è mosso, è caduto il microfono, ha fatto un tonfo fortissimo, il tizio si è  svegliato, ha preso il microfono e fa “salve a tutti!”

- Io, stanco dopo le poche ore di sonno di Venerdì, al Sabato sera tardi mi ritorvo morto sulla sedia con Ulisse e Bio che mi guardano meravigliati, poi dovevo fare qalcosa con il portatile, ed ho dunque assunto una posa improponibile che potete vedere anche grazie alla foto scattata da Biohazard

- In un secondo momento invece ho dato fuoco a resistenze da 22 ohm con una pila al piombo, su richiesta di bio, generando molto fumo e puzza!

Parte delle foto sono ora a http://picasaweb.google.it/otacon22otaku/ESC2k08#
C’è anche un video stupido!

Ferie.

Agosto 1, 2008 di otacon22

Hola. Sarò in ferie da oggi fino al 23 Agosto. Sarò prima a San Benedetto del Tronto da un compagno e successivamente in un college inglese a Brighton, continuerò comunque la mia attività di hacking inesorabilmente con i miei 2 portatili con i loro quattro sistemi operativi.
Tixo resta in sospeso mentre progetto alcune cose importanti per le sue schede, spero di continuare a lavorarci con un giusto aiuto dai soliti noti verso settembre.
Non sò se avrò internet durante le vacanze, spero di sì, altrimenti vi saluto adesso!

3d python led cube

Luglio 13, 2008 di otacon22

Rieccomi con un progettino che stavo continuando da alcuni giorni e ora vengo a pubblicare.
Molti avranno sentito parlare e avranno visto i famosi “Cubi di led”, essi sono dei mucchi di led saldati insieme in modo da formare un cubo e che vengono accesi in modo alternato per fare delle animazioni.

Qualche giorno fa mi sono arrivati 500 led blu che avevo ordinato su un sito cinese, così ho sfruttato l’abbondanza di risorse per provare anche io a fare un piccolo cubo di led.

Solitamente per questi lavoretti si usa un bel microcontrollore e qualche multiplexer, però io non avevo voglia di usare nè l’uno nè l’altro. Ho quindi pensato di  sfruttare dei contatori.

In elettronica i contatori sono degli integrati con un funzionamento abbastanza semplice: si alimentano hanno 10 pin di uscita, che possono avere un valore digitale, ovvero 0 o 1, che corrispondono a 0V e 5v. Appena alimentato l’integrato si accende solo la prima delle 10 uscite, che sono numerate a partire da 0, quindi in realtà si dice che l’ultima è la nona.
Sull’ integrato c’è un pin in ingresso, su cui puoi mandare un segnale ancora digitale a 5v e poi rilasciarlo. Così facendo il contatore “incrementerà di 1″, quindi l’uscita numero 0 si spegnerà e si accenderà invece l’uscita numero 1.

Dunque continuando a mandare inpulsi su questo pin in ingresso, chiamato “Clock”, è possibile accendere una ad una tutte le uscite. Se mettiamo 10 led, uno per ogni uscita, potremo accenderli in successione uno dopo l’altro. Arrivati al nono si ricomincia da 0.

Cosa dovrebbe centrare tutto questo con un cubo di led?
Beh questo può aiutare ad avere ulteriori pin di output, se come nel mio caso vogliamo usare la porta PARALLELA per comandare il tutto, ed evitare di utilizzare microcontrollori.

Prima di parlare di questo però bisogna parlare della struttura del cubo.

Come tutti sappiamo i led sono dei diodi che emettono luce; hanno due estremità o pin: un catodo e un anodo, ovverosia il + e il – . Alimentando inversamente o da entrambe le parti con lo stesso segno il led resta spento.
Ora quindi dobbiamo fare un cubo; nel mio caso ho voluto farlo 4×4x4, ovvero di 64 led: 4 livelli di 16 led l’uno.
Il primo passo è stato prendere un supporto di plastica che avevo in casa e farci 16 buchi con un trpano, perfettamente allineati tra loro. Ho sfruttato questo per tenere i led ben allineati e distaziati mentre li saldavo. Così ho iniziato mettendo i catodi( il – ) di ogni led in comune con quello vicino, in modo da unire tutti i catodi dei led.
A questo punto avevo 16 anodi rivolti verso di me e un unico pin di catodo. Così ho iniziato a lavorare a livelli e a fare 4 di questi livelli. Poi ho messo questi vari “livelli” uno sopra l’altro per formare fattualmente il cubo,ho saldato assieme tutti gli anodi in verticale, ossia che guardando il cubo dall’ alto ci fosse un unico anodo per ogni colonna
A questo punto ho messo il tutto su una vecchia basetta millefori che avevo in casa, che ho riciclato per questo progetto. Ora mi trovavo davanti a un bel cubo, con sotto 16 pin di ingresso e sul lato 4 masse , una per ogni “piano” del cubo.
Ora entra in gioco l’ingengno: ho trovato questo metodo buono per far funzionare tutto:
la porta parallela del computer ha 8 pin in uscita digitali, come quelli di cui ho parlato prima del contatore, con la differenza che questi possono essere accesi contemporaneamente.
Per controllare tutti i led ho fatto così: usando 2 contatori accendo uno dopo l’altro i 16 pin alla base. Dato che il contatore ( i hcf4017be che ho usato io ) ha solo 10 uscite ne ho usati 2: il primo lo ho collegato dal pin 0 al pin 7 ai primi anodi alla base, poi l’8 pin lo ho lasciato scollegato( per poter avere un pin che teneva tutti quelli del primo contatore spenti per vedere quelli del secondo ),il pin 9, l’ultimo, lo ho collegato al clock dell’ altro contatore, che andava poi a sua volta a collegarsi ai rimanenti led dal pin 0 al pin 7, poi ho lasciato vuoto il pin 8 e 9 per avere anche qui dei pin che tenevano tutti i led del contatore 2 spenti per tenere accesi solo quelli del contatore 1. Ho quindi collegato tutto e poi ho collegato anche le alimentazioni dei contatori e i pin di reset( come dice il nome resettano il valore del contatore) alla parallela. Quindi la parallela aveva collegato l’alimentazione dei contatori, il clock del contatore 1, i 2 reset e i 4 pin dei catodi dei “piani”.
Finito di collegare tutto ho iniziato a fare il software in python.

Per fare il software ho usato la libreria PyParallel, che per non sò qualche motivo sotto linux non funziona se non si esegue prima

sudo modprobe -r lp

sudo modprobe ppdev

e si esegue successivamente python da root.

Il programma appena partito accende i contatori e li resetta. Poi è possibile richiedere tramite una funzione di accendere un certo led, dando le coordinate x,y,z, il programma al suo interno inizia un ciclo con cui dà al contatore il clock fino a quando non arriva ad accendere il led desiderato; mentre lo sta facendo tiene tutti i catodi dei piani a 1, cioè che la parallela invia il + su tutti i piani, così mentre si accendono i led intermedi prima di arrivare a quello desiderato non si veda nulla. Appena il contatore arriva al led desiderato viene acceso il piano che interessa mandando 0 e lasciando gli altri piani a 1.

Sembra che funzioni abbastanza bene il sistema, se non che non è ultraveloce e soprattutto non è il massimo se si vogliono accendere tanti led assieme, perchè non essendo possibile accendere 2 led di una diversa fila contemporaneamente è necessario allora accendere uno e poi l’altro velocissimamente, così da non mostrare il tempo che separa lo spegnimento del primo dall’ accensione del seguente.

il codice sorgente è  sull’ svn , qui, però non sò se possa essere molto utilizzabile dato che per settare i pin di uscita della parallela ho tenuto conto dell’ ordine in cui avevo collegato ai vari pin, quindi bisognerebbe fare tutto identico a me… comqunque almeno per avere una consulatazione il sorgente è lì. Ho fatto una foto che vi posto di seguito e un breve video messo su youtube.

3d led cube

3d led cube

The File Splitter

Luglio 12, 2008 di otacon22

L’ altro giorno stavo lavorando ad alcune cose quando mi è venuta improvvisamente la necessità di dividere un file in più parti… Però mi sono accorto di non avere tools per farlo su Ubuntu.
Allora senza voler cercare programmi già fatti ho deciso di fare io un piccolo tool!

Ho dunque creato un programma da shell funzionante su windows/linux e lo ho chiamato “Fsplitter”, che sta a significare “File Splitter”. È ampliabile, modificabile, impostabile e utilizzabile, ecco a voi i link per scaricarlo dal caro svn di nocopy.

Versione per linux: http://tools.assembla.com/svn/nocopy/projects/Fsplitter/fsplitter.zip

Versione per windows: http://tools.assembla.com/svn/nocopy/projects/Fsplitter/FileSplitter_0.1_WindowsCompiled.zip

La versione per linux contiene un setup.py che va eseguito da root con  argomento “install”

sudo python setup.py install

La versione per windows contiene una serie di files con un exe principale, che va richiamato da shell.

Il programma funziona sia con che senza argomenti, dandogli argomento “-h” fornisce alcune indicazioni

fsplitter -h

Tixo 3.0 – Continua!

Giugno 2, 2008 di otacon22

Hola!

Torno a scrivervi per fare un breve rapporto su quello che avevo progettato nel precedente post e su quello che sto facendo ora…

Come descritto precedentemente ho comprato una scatola stagna in pvc per componenti elettronici, poi ho preso 4 batterie al piombo da 6V e 10A, per un totale di (6*10)*4=240W, che credo permetteranno di coprire bene i consumi del robot in viaggio.
Dentro ho poi messo 4 sbarre di alluminio con relative viti e bulloni per tenere ben salde e immobili le batterie al piombo.
Nella base della scatola in pvc ho fatto vari buchi per inserire dei led, che fanno sia luce per vedere il robot al buio, sia per fare un po’ di scena :) . In particolare ho messo in 4 punti delle coppie di led, uno verde e uno blu, poi ho unito insieme le masse, così posso decidere di avere il fondo del robot blu o verde. Frontalmente ho fatto altri buchi e ho inserito 3 led bianchi a mo’ di fari, di cui il led centrale è uno dei led bianchi più potenti in commercio, da 25000 mcd. Sempre frontalmente ho messo 10 led a infrarosso ad alta efficenza disposti in modo da poter coprire abbastanza spazio. Questi mi saranno utili quando metterò poi forse una telecamera esterna.

Sempre frontalmente ho messo 2 piccole canaline rese impermeabili con dentro entrambe dei sensori a ultrasuoni da 6,4 metri, controllati via seriale.

Qui è visible la scatola e il suo contenuto(con anche la scheda di alimentazione durante l’assemblaggio)

Ah, dimenticavo di dire che sotto ci sono 4 servomotori da 6,5 kg l’uno, con delle ruote da circa 5 cm di diametro.

Facendo un test con i 4 motori a 12V sono arrivato a 2 km/h circa, però con una potenza molto elevata, in grado di spostare anche 2 sedie. Il fatto è che le ruote non sono ben allineate, nonostante le notti insonne per tentare di allinearle bene, quindi bisognerà poi gestire anche l’orientamento. A tale fine ho messo anche una bussola elettronica doppio asse che è in grado di sapere con precisione, rilasciando un segnale analogico, la direzione del nord magnetico terrestre. Il nord, che forse molti non sanno, c’è anche verticalmente sulla terra, cioè se avete una bussola speciale con l’ago che ruota non in orizzontale ma in verticale, potete vedere di quanto siete inclinati, perchè la bussola verrà attratta dal nord del campo e resterà sempre prarallela al suolo. Dunque questo mi sarà anche molto utile per sapere in discesa a che inclinazione sono. A tale proposito stavo anche pensando di utilizzare la forza di gravità in discesa trasformando con un relè di scambio, i motori in dinamo.

Nel pannello sopra ho invece preparato il pannello solare opportunamente isolato con del polistirolo, il gps usb reso impermeabile e incollato al pannello e per finire una antenna wireless con un guadagno di 6 db per avere una recezione migliore del segnale

A proposito di alimentazione ho iniziato a fare, come si vede dalle foto

la scheda di alimentazione. Come sempre ripeto che se non funzionerà bene poi la rifarò ancora. Questa è già la seconda che assemblo. Sopra c’è un sistema che permette di utilizzare le 4 pile in 2 gruppi da 2, in modo da avere 12v per gruppo, poi è possibile passare dal gruppo 1 al gruppo 2 con un relè. Nel momento di scambio un condensatore permette che non si spenga il sistema. Quando passo a un altro gruppo di pile nel frattempo posso ricaricare l’altro gruppo facendo scattare il pannello solare. Una apposita scheda separata( non visibile ) mi permette infatti di tenere costante la corrente dal pannello e ricaricare le batterie al piombo. Tutte le tensioni di ogni batteria e del pannello sono costantemente controllate grazie a dei partitori resistivi appositamente regolati.
Tutti i relè per la ricarica e lo switching sono controllati anch’ essi da dei transistor attivati da dei pin collegabili a un pic o altro.
anche i led sono tutti cablati in modo da poter essere controllati solo da un pin di segnale.
la scheda di alimentazione rilascia poi 5v a 2A per pic e altro e 12v diretti per i motori, poi c’è una scheda esterna( non visibile, in assemblamento) che regola la tensione per alimentare la fonera.
Per controllare tutto l’hardware ho intenzione di usare pic della serie 18f e 16f, tutti da 40 pin, e controllarli in parte via seriale e in parte via ethernet con una scheda apposita per controllare dispositivi ad alta velocità tipo webcam ( non visibile, ora in progettazione ).
Il software è in fase di testing e beta, perchè è necessario pensarlo per consumare meno risorse possibili.

Ho intenzione di creare sul robot un server che è possibile controllare per avere l’accesso totale al robot, oppure configurare per eseguire un compito in modo autonomo.

In conclusione vorrei ribadire che il robot è assolutamente impermeabile e resistente all’ acqua, neve e ghiaccio, eccetto per i sensori a ultrasuoni(altrimenti potrebbe essere quasi stagno)

Si accettano consigli, critiche e soprattutto aiuti!

Ciao!

P.S:Sò del google x-prize, però prima vorrei finire questo!

Tixo 3.0 – Pure Power

Gennaio 29, 2008 di otacon22

Arrivo con elegante ritardo dall’ ultimo post di settembre sull’ hackit.
Come forse avevo accennato all’ hackmeeting avevo iniziato a lavorare con Pollo sulla fonera per qualche applicazione pratica di controllo remoto. Successivamente ho sviluppato 2 versioni robotiche sotto il nome progetto “Tixo” utilizzando la fonera:
Prima utilizzando un case di alimentatori per pc e 2 motori lego ho fatto un piccolo robot, con pila al piombo come sempre, poi, non essendo soddisfatto, visti anche i problemi che dava come controllo motori ho deciso di rifarlo in versione + potente.

Ho chiamato questa nuova versione 2.5, in questa versione ho utilizzato sempre i motori lego con tutte le pulegge e vari sistemi per aumentare la portata di carico e la potenza di spinta di questi ultimi. Il risultato è stato molto buono, anche se va tenuto conto che ho usato invece di una, ben 2 pile: una da 10A e una da 7A, entrambe da 6V. All’ interno avevo messo un driver per motori che li pilotava a 1A a 12V. Il risultato è stato buono, soprattuto vedendo che spostava anche le sedie e andava su quasi qualunque superficie.
Così ho preso questa decisione: lasciare perdere ogni cosa, compreso il progetto del quadricottero, per dedicarmi a fare esperienza con robot da esplorazione autonomi, così ora ho deciso di mettermi a lavorare per fare una versione + stabile e da esterni; cercando di “esagerare ” nelle necessità.
Ovvero lavorare dicendo:”le batterie con i motori accesi durano 4 ore, ok, non bastano, mettiamone un altra”, il sistema di alimentazione è disordinato, ok ,se ne fa un altro nuovo”
Così ora mi sono messo a lavorare a Tixo 3.0 , grazie anche alla collaborazione di Pollo, il progetto sta prendendo forma nella mia mente ma anche praticamente.
Ho deciso di prendere un case in pvc tipo scatola di derivazione piuttosto grande(30×40x12 cm) e utilizzarlo come telaio. Avendo visto poi i problemi con i motori e tutto ho deciso di prendere 4 servi da 7 kg su ebay. Dopo averli testati ho deciso di usarli come motoriduttori( cioè comandandoli senza impulsi, ma come motori normali) e modificandoli per la rotazione continua. Così mi sono ritrovato con 4 motorini dc da 6v, stile motoriduttori. li ho incollati bene sotto il case in pvc e ho preso delle ruotine da robot-italy. Nei primi test ho visto però che queste ruote non reggevano bene e andavano troppo lente, così ho comprato delle ruote di gomma dal Brico Center da circa 10 cm di diametro. Ora almeno ho ruote più robuste e il mio telaio si sposta a 1 km/h, con 4 ruote motrici con infinito peso di carico in orizzontale (sostenuto dalla reazione vincolare delle ruote) e peso di carico massimo a 45° di pendenza di 20kg( 7*4*(radice(2)/2) ) . Con questo intervento pensavo di essere abbastanza soddisfatto, però ho anche scoperto che è possibile utilizzare i motori dei servomotori a 12v al posto che a 6, il che porta molta + potenza di carico e di spinta e velocità raddoppiata (2 km/h).
Ora valuterò se fare un sistema “turbo” che utilizza i motori a 12v quando deve andare veloce, oppure un sistema PWM a 12V, che manda impulsi di accensione a intervalli molto brevi, così da poter regolare la velocità dei motori, e poter sfruttare anche quella massima. Nel frattempo ho poi anche lavorato al sistema di alimentazione. Per ora ho messo 2 batterie a catodo comune che sono collegate con un terminale alla scheda di alimentazione. Su questa scheda ho posto un complesso sistema di regolatori di tensione che mi fornisce un voltaggio di 5,4V a 2A per la fonera e 5,00V a 1A per i pic, qualunque sia lo stato delle pile: sia completamente cariche che completamente scariche(quindi per questo bisogna evitare di andare sottocarica). Poi ho messo anche un sistema con un relè che seleziona la batteria da utilizzare di default. Infatti di default viene attivata la prima batteria, che alimenta il tutto; quando questa è scarica o per altri motivi, è possibile mandare da un pic o altro un impulso al relè per spostare l’alimentazione alla seconda batteria, potendo proprio scollegare la prima. Per permettere questo “switching” ho dovuto anche mettere dei condensatori abbastanza potenti (forniti da pollo), che sostengono la richiesta di energia mentre il relè scollega una batteria e sta ricollegando l’altra.
Poi ho messo un circuito per la ricarica delle batterie, utilizzando un pannello solare in cristalli di silicio che fa 12V a circa 1A, che però non ho ancora sistemato bene. Poi ho messo vari trimmer per il controllo analogico della carica delle batterie e del pannello solare. Poi ho finito recentemente di mettere i 2 L293B , i driver per motori che reggono 2 motori in 2 sensi a 1A l’uno.
Ieri ho iniziato a mettere i led bianchi frontali, per l’illuminazione e quelli sotto per illuminare le ruote blu o verdi e fare scena.
Quà vi ho parlato della struttura, poi il cervello sarà la fonera, che tra l’altro è scesa a 4,31€ l’una sul sito ufficiale.
La fonera sarà collegata a dei pic via seriale a 56 kb/s e poi un altro pic sarà collegato via ethernet con un controller ethernet, così da ottenere 10 mb/s di trasferimento dati. Infatti ho intenzione di collegare una piccola microcamera a bassa risoluzione trovata in un vecchio gioco del game boy color, trovate info quì .Ho già fissato sul “tetto” del robot il pannello solare (opportunamente isolato per la pioggia) e l’antenna gps usb(che sarà collegata a un pic) e una antenna separata wireless per avere + recezione.
Frontalmente ho messo 2 sensori a ultrasuoni da 6,4 metri che ho comprato su un sito di sensori americano , insieme a una bussola elettronica molto precisa, al fine di mantenere la direzione quando il robot deve andare dritto(pochi millimetri di inclinazione sulle ruote fanno facilmente inclinare la direzione del robot)
I led, i sensori a ultrasuoni e tutto il resto è completamente isolato dalla pioggia, nebbia, bufera di neve o tempesta di sabbia, ora mi resta solo da isolare i buchi che ho fatto per far passare i fili dei componenti esterni con il silicone(consiglio di Pollo), poi metterò un sistema di accensione a chiave per evitare interruttori o pulsanti premuti per errore o sbandando contro qualcosa. Internamente utilizzerò per ora le 2 pile al piombo che già ho, anche se spero di prenderne altre 3 da 10 A, in modo da avere 30 A totali e quindi il massimo di autonomia.
L’idea è quella di creare poi un software modulizzato composto da un agente e una rete neurale per il controllo autonomo del robot, e poi anche il controllo a distanza tramite il wireless. In settimana devono arrivarmi anche un altro paio di sensori e led. Pollo sta lavorando sulla interfaccia ethernet.

L’idea è nata dalla decisione di Pollo di organizzare un meeting di Hgcomo con una competizione di robot, in cui probabilmente gareggerà anche il mio, come “robot autonomo da esplorazione”. Inoltre a lavoro finito pubblicherò tutto in inglese e italiano , schemi, foto, video e software e magari gli farò fare un giretto a Monza o in qualche strada lunga qualche kilometro per vedere come regge.

Ho un po’ abbandonato i nocopyers per lavorarci ma spero di tornare attivo entro breve.

Hackmeeting 2007 – 0×0A Edition

Ottobre 2, 2007 di otacon22

Già! C’è stato, come avevo avvisato e io ci sono stato. Questo è stato per me il 2° hackmeeting, con possibilità però di soggiornare più a lungo e quindi scoprire la vita della comunità hacker italiana riunita :)

In effetti era da circa 3 o 4 mesi che stavo controllando costantemente ogni giorno la mailing list di hackmeeting per ogni novità, anche se poi sono intervenuto solo quando si è trattato di decidere i giorni e il posto e finalmente qualche settimana prima sono riuscito a organizzare egregiamente il viaggio per Pisa del 29 Settembre.
Abbiamo deciso di trovarci io, Pollo e Biohazard e sfruttare l’occasione dell’ hackmeeting per ritorvarci finalmente assieme e parlare tra noi. Inizialmente pollo era dubbioso, e anche bio, ma poi sono riuscito a scagionarli dalle false testimonianze che c’erano su internet. In effetti c’era chi diceva che non sarebbe venuto per i pessimi seminari che c’erano e altri si sono lamentati di alcuni dentro al meeting. Io reputo queste argomentazioni molto stupide e prive di senso, dato che l’ hackmeeting è per definizione un evento autogestito, quindi non si può dire: “non vengo perchè fanno dei seminari di merda” (tra l’altro gli argomenti erano comunque molto interessanti) perchè i seminari non sono proposti da “organizzatori” ma da partecipanti, quindi se ti lamenti tanto che c’è un corso di linux base (chi non sa cos’è un computer ha comunque diritto a imparare a usarlo) ma ne proponga uno lui se è tanto bravo.
Comunque rimandando queste inutili risposte a lamentele stupide ho cercato di spiegare come stavano le cose a Biohazard e Pollo, raccontando della mia esperienza e delle stupidaggini che giravano.
Alla fine ce la ho fatta: io e Pollo ci siamo organizzati per trovarci a Milano dove poi saremmo partiti per Firenze dove poi con Biohazard saremmo partiti per Pisa.
Mi sono trovato con Pollo intorno alle 8.45 a Milano centrale, incredulo del casino presente di Sabato. Ci siamo quindi diretti alle macchinette automatiche per fare un biglietto per il treno Eurostar per Firenze. Dopo numerosi tentativi e macchinette rotte e che non accettavano contanti siamo riusciti a impossessarci di una di queste scoprendo però che non erano più presenti posti liberi sul treno, facendoci sbalordire. Inizialmente ho provato a chiamare Biohazard per avvertirlo che saremmo arrivati con il successivo delle 10, ma stava ancora dormendo. Siamo fortunatamente poi riusciti, tramite lo sportello, ad avere comunque dei biglietti del treno senza garanzia di posto da sedere e siamo corsi al binario. Per nostra fortuna, ma anche sfortuna come poi abbiamo scoperto, il treno non era ancora partito, e siamo riusciti a salire e trovare sedili liberi. Alle 9.30 il treno non era ancora partito, e poco dopo si è scoperto che c’era una porta rotta e che la stavano riparando, questo ci ha fatto slittare quindi tutto di 30 minuti. Pochi minuti dopo siamo partiti. Durante il viaggio ho parlato abbastanza con pollo mostrandogli il funzionamento delle reti neurali che sto studiando.
Finalmente arrivati (ovviamente in ritardo) a Firenze abbiamo incontrato Biohazard, con cui abbiamo fatto il biglietto per il treno per Pisa(anche quello abbastanza tirato come orario, anche se poi non è partito subito). In treno abbiamo potuto parlare molto di elettronica e di progetti in sviluppo da tutti.
È stata poi molto comica la scena in cui Biohazard stava parlandoci del detonatore di norbix che aveva realizzato e diceva: “lo chiameremo per comodità ‘STARTER’ per non creare panico tra la gente” e Pollo, capendo quello della macchina fece una scena molto comica :)
Arrivati a Pisa ci siamo diretti verso ” Il Rotondo” (così chiamato da Bio e Pollo , una grossa rotonda fuori dalla stazione) e ci siamo spostati verso la sede dell’ hackmeeting presso il centro sociale Rebeldia.
Entrati abbiamo lasciato una piccola offerta per finanziare le spese che si sono dovute sostenere per comprare vario cibame.
Appena entrati abbiamo trovato un parcheggio pieno di camper e macchine in cui vigeva al centro un “totem” fatto con case di pc e altri macchinari(tra cui pulsanti amati da me e bio)

 

 

 

 

 

 

 

 

 

 

 

 

 

Subito dopo questa arte improvvisata si trovava una specie di capanna fatta con transenne e coperta con teli impermeabili in cui c’era il team di netsukuku ( tra cui Alpt che conosco su internet ma non ho avuto modo di vederlo ) e un tizio che smanettava con robe di elettronica( poi scoperto essere Autoscatto ).
Dopo la “capanna” si entrava nella stanza del dhcp umano(popolata da 1 pc e diverse persone a lavorarci sopra) e in una sorta di anticamerona in cui c’erano varie magliette ( di cui però non ho preso nulla per mancanza di magliette interessanti) e braccialetti e collane fatte con memorie, pic e ram vecchie. Dopo questa anticamerona c’era la Sala Lan(merita il nome maiuscolo), come molti sapranno la Sala Lan è dove si appostano tutti i partecipanti con il loro fisso/portatile a lavorare da soli, cercando altra gente o con chi sono venuti. La Sala era composta da circa 4 file di 10 metri di tavoli, su cui si estendevano decine di portatili e fissi connessi e accesi al lavoro rigorosamente su linux. Ho visto ancora lo stesso ragazzo dell’ anno scorso con il clustering di 4 schede madri che stava smanettando con la sua gentoo. Appena entrati non abbiamo saputo dove metterci per mancanza di spazio fisico(era strapieno OVUNQUE) e alla fine abbiamo fatto spostare della roba e ci siamo messi su un tavolo vicino a un angolo nel muro. Quì abbiamo incontrato altri 2 tizi che ci hanno dato qualche info per collegarci alla rete.

Per collegarmi( ho portato i miei 2 portatili), ho usato comunque solo cavi di rete collegandomi a un grosso hub. Dal punto di vista elettronico ci siamo attaccati a una ciabatta già lì con la nostra, che comunque era già attaccata a un altra a sua volta e un altra ecc nei secoli dei secoli…
Nel foglio di istruzioni fornito dal DHCP umano ( che quest’anno se la è un po’ presa comoda ), c’erano anche informazioni su come non “MORIRE” (citato testualmente) sotto gli attacchi di arp spoofing del proprio vicino.
La rete continuava a saltare da un livello bassissimo a una velocità molto elevata, sono riuscito a collegarmi dopo qualche ventina di minuti di tentativi sparando 10.0.0.51 come ip. Pochi minuti dopo tra Bio, Pollo e altri 2 ragazzi è iniziata una discussione sull’ hackmeeting ecc, dato che anche loro 2 erano arrivati per la prima volta, però il giorno prima, dal venerdì.Uno di questi 2 ragazzi mi ha parlato di crittografia, la sua passione, che lo ha spinto a amare la matematica che aveva sempre odiato. Lui mi ha parlato anche di come odiasse le spiegazioni matematiche che erano anche state fatte in alcuni seminari(a cui io però non ho partecipato a nessuno purtroppo). Neanche 10 minuti dopo, mentre si parlava di hacking, quando finalmente la rete sembrava aver iniziato a funzionare siamo rimasti sbalorditi dalla pagina che compariva su firefox, qualunque indirizzo si mettesse, anche cambiando dns.

Diverse persone, stanche di chi con la macchina aveva sfruttato il parcheggio dell’ hackmeeting, non permettendo ai campeggiatori di installarsi, hanno congiurato con il dhcp umano e altra gente questa trovata: ad ogni pagina web compariva questa scritta: “Attenzione! Spostate TUTTE le macchine dal piazzale ADESSO!!!Se non spostate tutte le macchine fuori dal piazzale non riaccendiamo la rete “. Pochi minuti dopo è arrivata una ragazza al microfono del palco dicendo che appunto non si sarebbe riattivata la rete se non si spostavano le macchine dal piazzale. Molta gente ha iniziato a fare cori di “noooo……”. Per fortuna alla fine non sò come qualcuno deve esserci deciso a spostare quelle macchine dal piazzale ed è tornata la rete finalmente. Io, pollo e Bio abbiamo iniziato a smanettare con i pic e mostrare varie cose anche a Bio. Finalmente sono riuscito a far andare un mio programmatore di pic che non mi funzionava a casa. Alcune persone si sono avvicinate per curiosare cosa facevamo. Ah, dimenticavo che vicino a noi c’era un piccolo baretto in cui si poteva avere acqua gratis e birra o coca (tarocca) a pagamento. Pollo o bio, non ricordo, si sono chiesti perchè non ci fosse un sistema per ordinare via rete la roba da bere e alcuni hanno fatto notare che a malapena si pingava il gateway. Nella sala c’era inoltre una sorta di Jubeox elettronico fatto con un pc con linux e amaroc e tantissimi mp3, poi era possibile inserirne altri tramite ftp dal proprio pc, il tutto era collegato a mega cassoni. Ovviamente non mancavano i gruppetti di gente che lavorava indipendentemente e chi passava a guardare, molti scambiavano file e aprivano server in rete.

Dopo varie dispute con pollo e bio abbiamo deciso di fare con il pic 16f84 un gestore del mio display lcd a caratteri mai funzionato interfacciabile con la fonera e quindi controlalbile via wireless. Dopo vari tentativi durati fino a sera tardi però abbiamo avuto prima difficoltà a scrivere sul display(che sembrava facilissimo) e poi a impostare il bridge tra ethernet e wireless sulla fonera, che mi ha impegnato 2 ore senza successo insieme a un tizio esperto di reti che mi ha dato una mano. Purtroppo è andata a finire che abbiamo perso il controllo remoto, quindi sarà probabilmente da formattare. Bio ha poi comunque mostrato la sua eeprom drive 255, un “mini pc” con operazioni di base di memorizzazione e altro fatto con il picaxe e tanti led e bottoni. A mangiare era possibile andare presso la cucina dell’ hackit, ma noi abbiamo preferito rilassarci da mc Donald. Dopo una lauta cena siamo tornati al lavoro, smanettando anche su altre piccole cosette che ci siamo fatti vedere a vicenda. Nel frattempo, il tizio incontrato all’ inizio, al nostro arrivo, ci aveva raccontato come aveva tentato di dormire su una panca nella sala lan, tra la musica e il Theremin affiancato che emetteva suoni acuti e lo disturbava in continuazione, questo perchè nelle sale per dormire era tutto al completo. Dopo qualche foto abbiamo avuto modo di sentire l’inizio della musica: si è alzato dapprima il volume della musica elettronica che era diffusa nella sala, poi è subentrato un tizio con un programma che componeva al momento musica elettronica accompagnata da video pressochè casuali. Verso mezzanotte, l’una, la sala si è ripempita al massimo, al punto che non riusciva più a muoversi. Noi nonostante le raccomandazioni del tizio siamo andati a vedere i posti per dormire: inizialmente abbiamo girato tutte le stanze per dormire e i corridoi trovandoli pieni, poi siamo anche andati dietro al palco dove c’erano pochissimi posti dietro le casse… Alla fine siamo riusciti a trovare un posticino tra il sottoscala e l’uscita in un piccolo passaggio, dove bio, io e pollo ci siamo disposti a lato del muro con il sacco a pelo. Inizalmente sono morto di caldo, poi di freddo, alla fine sono riuscito ad addormentarmi verso le 3-4, per risvegliarmi verso le 6, in cui la gente ha iniziato ad andare a dormire.
Alle 7 poi mi sono alzato e ho svegliato anche pollo, mentre abbiamo lasciato bio a dormire. Ho iniziato a girare per la zona deserta, e sono entrato nella sala della lan, che emanava calore :) , lì sono girato in silenzio per vedere la gente collassata ;D , c’era chi si era praticamente buttato di faccia sulla tastiera, chi era perterra senza sensi e chi invece aveva 3 sedie con il sacco a pelo disposto sopra :D , poi abbiamo visto il tizio delle raccomandazioni dormire sulla panca e svegliarsi poco dopo, dicendo che dormiva da poco + di 1 ora :) .
Siamo in seguito stati avvisati di alcuni scioperi ferroviari, quindi Pollo e Biosi sono avviati con questo tizio in stazione a controllare e (senza dirmi nulla) hanno anche fatto colazione , pagando in modo salato.Nel frattempo io, dopo 1 anno di tentativi sono riuscito a far funzionare pyparallel, era sufficiente fare
sudo rrmod lp
sudo modprobe ppdev
e poi avviare python da root prima di importare pyparallel.
Abbiamo poi fatto ancora qualche prova con il display lcd senza successo.Intorno alle 12.30 è iniziata poi l’assemblea di fine meeting in cui si è discusso di come si è svolto e le novità e tutto. Si è parlato di un articolo sul corriere che dimostrava di non essere venuto all’ hackmeeting per poterne parlare.

Come dicevo alcuni si sono lamentati che c’è poca interazione tra i partecipanti, ma come ho già detto essendo in molti non è possibile andare a vedere ciò che ognuno sta facendo, se si vuole interagire con altri bisogna avvicinarsi, osservare, fare domande ecc… non di certo sedersi a un tavolo e aspettarsi di ricevere gente.
Scappati in anticipo dalla assembla ci siamo diretti in stazione dove ci siamo salutati io e pollo con bio. Dopo una pizza presa in stazione siamo saliti sul treno che ci ha poi portato a milano passando per Genova. Al ritorno ho tentato (praticamente da solo, vista la stanchezza motivata di pollo) di fare un tris controllato da una rete neurale, che però sto ancora finendo.
Arrivati a Milano con 30 minuti accademici di ritardo Pollo ha perso una coincidenza per como e ha preso una seguente creando casino per chi lo stava aspettando a Como.

Io invece, dovevo tronare a Monza e inizialmente pensavo di prendere la metro, visti gli orari, poi invece ho preso il treno per Lecco, che è partito in ritardo a causa di ultras di Lecco infuriati per qualche partita andata male .

In effetti mi sono divertito molto, e devo ammettere che aspetto il prossimo, dove conto di esserci per + giorni , sperem.

Tutte le foto fatte da me e biohazard sono uppate quà , sto ancora valutando se, come , perchè mettere i pochi minuti di video fatti.

Comunque il tg3 ha fatto un servizio sull’ hackmeeting, anche se senza trasmettere giustamente l’idea dell’ incontro, lo trovate quà

Per ogni replica/aggiunta/insulto commentate pure .

Prossimi appuntamenti

Agosto 20, 2007 di otacon22

Un piccolo promemoria informativo per gli appassionati di informatica e hackers riguardo a prossime fiere/convegni/altro:

Come primo appuntamento vi segnalo l’Hackmeeting, che quest’anno arrivato alla 10^ edizione viene organizzato a Pisa il 28,29 e 30 Settembre 2007 presso la sede del centro sociale Rebeldia a pochi passi dalla stazione. Evento a cui partecipare per forza, visti i progetti presentati e i seminari che si terranno.

Ovviamente poi abbiamo lo Smau come ogni anno, che si svolgerà dal 17 al 20 Ottobre 2007 alla nuova fiera di Milano. Ricordo che purtroppo per motivi organizzativi legati al casino fatto gli scorsi anni, questa manifestazione resta chiusa per i maggiorenni e i minorenni di almeno 16 anni possono accedervi solo accompagnati da un maggiorenne.

Il Linux Day annuale si terrà nel giorno unificato del 27 ottobre 2007 in tutte le sedi LUG italiane.

E come ogni anno resta la fedele Expoelettronica di Erba, fiera di elettronica che si terrà appunto ad Erba il 10 e l’ 11 Novembre 2007.

Io dovrei essere presente a tutti questi eventi, se ce ne saranno altri, li pubblicherò.