|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jul 2003
Città: Alessandria
Messaggi: 10167
|
Robot: Linguaggi di programmazione
Sto portando avanti un lavoro sugli androidi e mi domandavo attualmente con quali linguaggi di programmazione si programmino i robot di qualunque tipo, da quello che compri in edicola ai robot industriali.
Mi rendo conto che la domanda potrà sembrare alquanto strana e difficile da rispondere ma su internet ho trovato solo molta confusione a riguardo: volevo capire se si utilizzano i linguaggi base ( C, Java, Pascal ecc... ) o se si sta puntando all'uso di nuovi linguaggi, orientati appositamente per questo tipo di macchine. Alcuni nomi? Kwb
__________________
Dell XPS 13 (9350) :: i5-2500K - HD6870 - AsRock Z68 Pro3 - Corsair Vengeance 8GB (4x2) DDR3 :: Samsung Galaxy S4 GT-i9505
|
|
|
|
|
|
#2 |
|
Member
Iscritto dal: Jul 2008
Messaggi: 237
|
Linguaggi .NET: http://msdn.microsoft.com/en-us/robotics/default.aspx
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
Non so cosa si usi ma ogni tanto sono veramente tentato di prendere uno di questi affari:
http://www.sunspotworld.com/ e dire addio alla tristissima pratica del taglio dell'erba nel prato. |
|
|
|
|
|
#4 | ||
|
Senior Member
Iscritto dal: Jul 2003
Città: Alessandria
Messaggi: 10167
|
Quote:
Quote:
Comunque, da quel che si evince dal video a scopo dimostrativo, sembra che anche il Java sia impiegato in questo campo
__________________
Dell XPS 13 (9350) :: i5-2500K - HD6870 - AsRock Z68 Pro3 - Corsair Vengeance 8GB (4x2) DDR3 :: Samsung Galaxy S4 GT-i9505
|
||
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
|
http://www.pycon.it/conference/talks...ation-robotics
http://pyrorobotics.org/ http://en.wikipedia.org/wiki/Python_Robotics
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro @LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys |
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Dec 2005
Città: Istanbul
Messaggi: 1817
|
Quote:
Aspetti di basso livello (i controllori ad esempio) sono tipicamente affrontati in C/C++ o comunque linguaggi che permettano il determinismo e il real-time. Discorso analogo per algoritmi come quelli di visione; per aspetti di piu' alto livello o che hanno requisiti temporali piu' rilassati tipicamente ci si appoggia al linguaggio che offre le librerie o i framework che piu' tornano comodi.
__________________
One of the conclusions that we reached was that the "object" need not be a primitive notion in a programming language; one can build objects and their behaviour from little more than assignable value cells and good old lambda expressions. —Guy Steele |
|
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Per la gestione del livello di controllo consiglio di dare un occhiata al .net MicroFramework
http://msdn.microsoft.com/it-it/library/cc185077.aspx Ovvero tutta la comodita' di un linguaggio managed moderno applicato all'ambito embedded.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Feb 2006
Messaggi: 1304
|
Domanda da noob:
ma perchè quando si parla di robot, si parla sempre di dispositivi embedded, processori a se stanti, etc etc? Non è possibile usare un normalissimo pc x86 ed attaccarci la parte meccanica con una USB? D'altra parte la stragrande maggioranza dei robots non deve andare in giro, quindi sarebbe una cosa fattibilissima, almeno credo. |
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Se si intendono robot autonomi (un mio amico ha fatto un robot che gioca a calcio ed è andato in Giappone a fare il campionato di calcio per robot, un altro mio amico ha fatto un triciclo che tramite una telecamera evita gli ostacoli e raggiunge autonomamente un punto sul GPS), la maggior parte è gestita tramite PIC o da piccole schede ARM-based con un SO realtime (solitamente un Linux), quindi C e assembler per PIC, C, C++ e assembler per le schede ARM-based.
Se si intende invece robot per robotica, anche a livello industriale, anche qui entrano prepotentemente i PIC. Magari l'applicazione di controllo può essere scritta in qualsiasi altro linguaggio, ma l'interfaccia con l'hardware è quasi sempre gestita da un PIC. |
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
PIC è la risposta http://en.wikipedia.org/wiki/PIC_microcontroller |
|
|
|
|
|
|
#11 |
|
Member
Iscritto dal: Jan 2007
Messaggi: 189
|
Se non sei molto esperto potresti dare un'cchiata ad Arduino, un progetto di hardware "open source" nato in italia.
Si programma in un c/c++ semplificato, rispetto al PIC per chi inizia è più semplice perchè hai una scheda che integra il processore, porta usb per programmarlo e trasferire dati al pc, alimentazione esterna, input output digitali e analogici. Poi i software per programarlo sono gratuiti, e ci sono molti esempi di codice. Volendo si può anche programmare in Ruby (rubyforge oggi non funziona) |
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: Jul 2003
Città: Alessandria
Messaggi: 10167
|
Anzitutto grazie a tutti quanti, ora ho le idee più chiare a riguardo.
In buona sostanza, come già pensavo, si usano più linguaggi, ognuno per raggiungere obiettivi diversi. In linea generale, da quel che ho capito, se si tratta di gestire una parte a basso livello ( quindi molto vicino alla macchina, se ho ben capito ) si usano i linguaggi a basso livello ( C, che ho letto essere il linguaggio più a basso livello tra quelli di alto livello ) e l'assembly ( linguaggio macchina ) assieme ad altri; come supporto hardware, come dice il buon cionci Questo è quanto ne ho capito, se ho detto delle vaccate vi prego di correggermi
__________________
Dell XPS 13 (9350) :: i5-2500K - HD6870 - AsRock Z68 Pro3 - Corsair Vengeance 8GB (4x2) DDR3 :: Samsung Galaxy S4 GT-i9505
|
|
|
|
|
|
#13 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
A parte l'equivalenza linguaggio macchina = assembly che non è vera, per il resto ok. I PIC si possono programmare anche in C, ma dipende sostanzialmente dal supporto del produttore.
Diciamo che attualmente la situazione è questa. Il linguaggio utilizzato per la realizzazione delle applicazioni di backend (quelle che monitorano, comandano ed impostano i vari parametri dell'hardware) lo puoi sostanzialmente scegliere come più ti aggrada. Prendendo ad esempio i due robot di cui ti parlavo prima: - il primo era realizzato con PIC e programmato in C - il secondo monta mi sembra un paio di PIC con in più una scheda con CPU con architettura ARM che permette di processare l'input video e gestisce il collegamento wireless con il PC che lo controlla. La scheda ARM monta un sistema operativo real time, non mi ricordo se si tratta di QNX o RTLinux In sostanza un buon modo per iniziare ad entrare in questo mondo è prendersi un PIC con qualche sensore a bordo e mettersi a fare prove. Ovviamente è indispensabile anche una buona conoscenza dell'elettronica (ad esempio per collegare il suddetto PIC a qualsiasi altra cosa diversa dal PC) e se si intende realizzare qualcosa di molto complesso servono anche conoscenze discrete di fisica, di teoria dei sistemi, di meccanica razionale e di pneumatica. E questo senza contare la parte software. Ecco perché solitamente la realizzazione di sistemi molto complessi è affidata ad un team di persone con specializzazioni diverse Ultima modifica di cionci : 10-06-2009 alle 17:18. |
|
|
|
|
|
#14 | |
|
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
Quote:
|
|
|
|
|
|
|
#15 |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Beh, nel primo post parlava di un "lavoro sugli androidi". Suona complesso
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) |
|
|
|
|
|
#16 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
|
|
|
|
|
|
#17 |
|
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
Massì, perchè tu stai lì a guardare la differenza tra una stretta di mano e una frattura al metacarpo. Ma se non fai lo schizzinoso secondo me qualcosa lo cavi anche con l'intuito
|
|
|
|
|
|
#18 | |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
I calcoli ti devo aiutare a dimensionare le componenti meccaniche, la potenza dei motori passo passo, la reazione alle sollecitazioni esterne...etc etc |
|
|
|
|
|
|
#19 |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Un mio amico, ing. Meccanico, come tesi di laurea e' riuscito a costruire e a fare camminare un ragno.
Effettivamente nel gruppo di lavoro erano in 3. Un meccanico, un elettronico e un informatico. Hanno anche provato a fare un robot da mandare a quella trasmissione dove i robottini si picchiavano fra di loro, ma non sono riusciti a finirlo.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. Ultima modifica di gugoXX : 10-06-2009 alle 18:03. |
|
|
|
|
|
#20 |
|
Senior Member
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
|
gesummaria, sto scherzando. Mi raccomando, gente allegra il ciel l'aiuta!
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 14:40.




















