arrowHome arrow Tecnologia arrow PureData arrow PDUINO: ARDUINO + PUREDATA
mainmenu
Home
Downloads
Search
Contacte
del.icio.us
Twitter
PureData
Bio
seccions
Tecnologia
personal
translate
Últims Posts
pd ring
Pd ring
PDUINO: ARDUINO + PUREDATA PDF  | Print |
Written by musa   
Tuesday, 18 September 2007

Arduino , en poques paraules, és una plataforma open source hardware basada en una senzilla placa amb entrades i sortides, analògiques i digitals, i en un entorn de desenvolupament que implementa el llengüatge Processing /Wiring. Al ser open source hardware tant el seu disseny com la seva distribució és lliure. És a dir, pot utilitzar-se lliurament per desenvolupar qualsevol tipus de projecte sense haver d'adquirir cap tipus de llicència. Hi ha varis projectes molt interessants de open source hardware, com per exemple Libelium .  


El cas és que ja fa uns mesos que tinc un arduino per casa (que el podem comprar fet, o fabricar-lo nosaltres mateixos si en tenim ganes). Fins ara m'havia limitat a enxufar-lo al ordinador i provar alguns dels exemples típics fets amb la variant de processing anomenada també arduino per tal de programar aquest aparatillu. La veritat és que el llenguatge per programar-lo és extremadament senzill (al igual que el processing). Igual que l'open-source, l'open-hardware, per definició ens dóna moltes possibilitats, i el fet és que a part de utilitzar el aquest llenguatge per interactuar amb Arduino, podem utilitzar-ne altre, com és el cas de PureData . Aixó ho aconseguim amb l'objecte arduino de puredata, també conegut com pduino , fet per Hans-Chistoph Steiner . A continuació una mostra molt senzilla de lo senzill que és interactuar amb Arduino des de PureData amb aquest objecte.

·CONNECTAR l'ARDUINO al ORDINADOR i CARREGAR FIRMWARE:
 
L'arduino que tinc jo és per USB, per tant, primer de tot agafem un cable USB i el connectem al ordinador. Per fer anar l'arduino amb PureData, primer cal que ens baixem el software de l'arduino. Jo l'he connectat a un Linux Ubuntu Feisty, per tant cal baixar el software per linux. Un cop descarregat, simplement el descomprimim, i a dins la carpeta descomprimida trobem un executable de nom arduino.
 

root@akira:/opt# tar xvfz arduino-0009-linux.tgz
root@akira:/opt# cd arduino-0009
root@akira:/opt/arduino-0009# ./arduino

 
L'executem i s'ens obrirà l'interfície del software, molt semblant a la de processing:
 

Abans de provar qualsevol cosa amb l'arduino, cal que assegurem dues coses:
    1)Anem al menú Tools-> Microcontroller (MCU) i seleccionem el xip del nostre arduino, en el meu cas ATMEGA168.
    2)Al tractar-se d'un arduino USB cal que assegurem que el port USB està seleccionat: Tools -> Serial Port -> /dev/ttyUSB0
 
Abans d'intentar carregar el firmware per utilitzar l'arduino amb PureData, és aconselleble provar alguns dels exemples que hi ha a la web d'arduino. 
 
Per fer funcionar l'arduino des de PureData, hem de carregar un firmware:
1)Primer ens baixem el paquet pduino .
2)El descomprimim, i dins la carpeta descomprimida hi ha un altre carpeta anomenada Pd_firmware amb un arxiu que anomenat             Pd_firmware.pde.
3)Des del software d'arduino: File -> Sketchbook -> Open i seleccionem el Pd_firmware.pde.
4)Un cop carregat aquest fitxer, fem click al botó Play, per tal de verificar el codi.
5)I finalment,  carreguem el firmware amb el botó Upload to I/O Board (Veurem com dos leds del arduino s'encenen).
 
Ja tenim el firmware carregat. 
 
 
·CONTROL de l'ARDUINO des de PUREDATA (motionCutreTheremin_v0.1pduino.pd):
 
L'objecte arduino que ens hem baixat, per utilitzar-lo en PureData necessitem instal·lar varies llibreries externes. PEr tant, la millor opció és installar el paquet pd_extended , un paquet creat també per Hans-Chistoph Steiner, que ens instal·la el PureData amb la majoria de llibreries externes (de l'altra manera hauriem d'instal·lar varies llibreries externes de forma manual).
 
Un cop tenim instal·lat PureData amb els externals, dins el paquet pduino que ja ens hem baixat hi ha el fitxer pduino.pd, que és l'objecte de puredata que necessitem per controlar l'arduino. Per tant, copiem aquest fitxer al directori on hi ha les llibreries externes del PureData:
 
root@akira# cp /home/musa/zpd/pduino/Pduino-0.3.1/arduino.pd /usr/local/lib/pd/extra/.
 
 
Un cop fet això, podem obrir amb PureData el patch arduino-test.pd. Connectant un LED a alguna de les sortides del arduino, podem veure fàcilment el fucionament d'aquest patch. 
 
He aprofitat aquest patch per afegir-lo al motionCutreTheremin, afegint un subpatch i amb una camera d'aquest patch fer encendre una línia de LED's en funció del moviment de la nostra mà:
 

 
Y el resultat d'aquest nou patch, basat en motionCutreTheremin_v0.0 és el següent (la qualitat de la camera és molt imporant, ja que qualsevol petita distorsió a la imatge provoca, en una camera de baixa qualitat, un fals senyal de moviment):
 
 
 
 

Comments  

 
# miquel 2007-10-06 11:36
Hola,

Jo fa temps "catxarrejava" amb un pic de la casa microchip i el programava en codi maquina directament.
Aixo del Arduino sembla mes facil i a sobre barat.

Un cop programat la cpu, suposo que la puc fer funcionar apart, vull dir amb una placa que faci jo mateix amb un cristall i altres complements i ja esta, no? O l'haig de tenir en aquesta placa que te conexio USB?

Molt explicatiu el post, gracies
Reply | Reply with quote | Quote
 
 
# musa 2007-10-06 12:05
Sí que pot funcionar sense estar connectat al ordinador (però llavors hauras d'alimentar-lo, 12v crec). De fet, el que fas és carregar el programa al xip, en el cas de pduino, el programa carregat és per poder-se connectar amb puredata i interactuar.
El llenguatge de programació arduino, l'he fet servir poc però és molt i molt senzill (com el processing, no se si l'has utilitzat mai)
Salut!
Reply | Reply with quote | Quote
 
 
# carles 2007-10-20 21:59
ole nanu!! tu has currat aixo!!
com ha abansat aixo i com s'ha integrat entre les diferentes tecnologies!!
salut!
Reply | Reply with quote | Quote
 
 
# toni 2008-07-31 22:44
soposo que la processa el PC...veritat? o m'estàs dient que bassant-se amb puredata puc capturar amb una càmera video per l'arduino????
Reply | Reply with quote | Quote
 
 
# musa 2008-08-02 11:12
Qui processa la imatge és puredata, la camera està connectada a la tarja capturadora, i l'arduino al usb... No se si he entès la pregunta, però si et refereixes a que l'arduino processi el senyal, la resposta és no...això només era un exemple per trastejar amb l'arduino i puredata,....
Reply | Reply with quote | Quote
 
 
# Idiot 2009-07-06 23:16
The is no such folder and file called "Pd_fIrmware containing a file called Pd_firmware.pde." in the downloaded pduino.

There is a readme file but says almost nothing.

The only source that explains what to do is this site (congratulation s), however, it refers to a unexisting folder and a unexisting file.

Can you please help with up-to-date advice?

Sorry for my English, not very good.

Besides, the security code is not easy to see and besides besides, if you fail, you have to type all again from zero.

I found this very unpleasant and unfriendly.

Hpe I can read code now
Reply | Reply with quote | Quote
 
 
# musa 2009-07-07 16:18
Hi, I've uploaded the firmware I used for this patch, pduino 3.1,

http://musa.poperbu.net/index.php?option=com_docman&task=doc_download&gid=28&Itemid=26
Reply | Reply with quote | Quote
 

Add comment


Security code
Refresh

< Prev   Next >
Search
Tags
PureData aircity android audio boxes castellers data directe ezstream ffmpeg flash flv freeframe frei0r gem geolocation gutsy icecast icmp ip joomla linux live mandril mandril_boxes mataró midi network networking ogg opencv osc patching pcap pcaplib pd pdp pdpcap pidip pure puredata radio santes santes24h sniffer sound streaming tcp tcpdump tecnologia theora theremin traffic ubuntu udp viatge video videolan vlc vorbis
Syndicate
Archive
Random Image
zn_gem02p.jpg
^top of page^

Creative Commons License