Primi passi con Arduino

Salve a tutti, sono nuovo nel mondo Arduino!
Stavo pensando di acquistare:

http://www.watterott.com/en/Arduino-Duemilanove

Vi spiego il mio quesito...
Ho un server asterisk! e volevo collegargli arduino... in modo che io con gli interni possa far aprire la porta di casa o il garage...Si può vero?
Ho qualche domanda:

  1. Devo per forza acquistare la ethernet Sheild? P.S ho il garage vicino al server... quindi credo che basti una prolunga..
  2. Arduino risulta come un interno? cioè per la programmazione di esso, posso chiamare esempio "150" ?? (numero interno) ??
  3. Conosco un po di C... e ho letto che la sua programmazione è un po diversa dall'ANSI C... potete indicarmi tutte le sue funzioni?

Grazie in anticipo

Ti rispondo solo una parte. (prima di dire cose errate)
3) leggi: http://arduino.cc/en/Tutorial/HomePage e Arduino - Home
Il C é un C++ con funzioni e librerie aposite per il Microcontroller che ha Arduno.

Ciao Uwe

Ok grazie do un occhiata... Intanto se qualcuno sa rispondermi alle altre due domande, faccia pure :smiley:

credo , e sottolineo CREDO che non serve per forza la ethernet shield, basta collegare l'arduino e inviargli i dati via seriale con l'usb ... se conosci i linguaggi di programmazione da te indicati dovrebbe essere molto semplice...

vorrei mettermi al sicuro...!!

Ciao roxdragon,

  1. Devo per forza acquistare la ethernet Sheild? P.S ho il garage vicino al server... quindi credo che basti una prolunga..

no, non è obbligatorio.
Se usi l'ethernet shield, nello script AGI che userai su Asterisk per pilotare l'apertura remota, manderai dei comandi ad Arduino via seriale.
Se invece userai l'Ethernet Shield, i comandi li invierai via get/post.

  1. Arduino risulta come un interno? cioè per la programmazione di esso, posso chiamare esempio "150" ?? (numero interno) ??

qui c'entra Asterisk e non Arduino, cmq: andrai a creare un'estensione su Asterisk per gestire Arduino, e quindi alla fine ti ci interfaccerai usando un interno.
Per la programmazione, invece, dovrai sempre usare la seriale :slight_smile:

roxdragon:

  1. Devo per forza acquistare la ethernet Sheild? P.S ho il garage vicino al server... quindi credo che basti una prolunga..

volendo puoi usare la seriale, ovviamete sul PC dovrai fare un grogramma che ascolta la seriale e eseguie i comandi richiesti.

roxdragon:
2. Arduino risulta come un interno? cioè per la programmazione di esso, posso chiamare esempio "150" ?? (numero interno) ??

dipende da asterisk e da che collegamento usi. Se usi il seriale molto probabilmente no, a meno che il tuo programma lato PC non si finga un interno e quindi abbia il suo numero con cui comunicare con asterisk.
Se usi la ethernet tutto dipende se asterick può essere impostato in modo che i dispositivi collegati via ethernet abbiano il loro interno. Ovviamente arduino dovrà contenere il codice per comunicare come se fosse un interno.

roxdragon:
3. Conosco un po di C... e ho letto che la sua programmazione è un po diversa dall'ANSI C... potete indicarmi tutte le sue funzioni?

le funzioni sono quelle classiche del C, puoi usare le librerie come math, string ecc..
ovviamente niente chiamate di sistema (fork, per esempio) dato che quelle si appoggiano sul Sistema Operativo, che arduino non ha.
per il resto vale la risposta di uwefed :slight_smile:

Ok grazie a tutti per avermi risposto... io ho asterisk configurato così..

interno 100 Nokia n95
interno 101 SPA3102
interno 102 Software su pc
e così via...
ho debian nel server, senza X (quindi niente windows)

non ho ben capito la programmazione di arduino... dopo averlo acquistato...
Ricordo che con l'spa3102 attaccavo il cavo del telefono alla sua porta FXO e digitavo #0qualcosa del genere e mi entrava nella configurazione... Funziona così arduino?

no, arduino si programma via seriale (o usb) e devi usare l'IDE apposito, o comunque avr-dude.. per la programmazione ti consiglio un pc con GUI, poi quando hai completato sei apposto.
se dici che gliinterni li puoi settare ai software di PC allora dovresti riuscire a usare la seriale, avra un programma su PC che faccia da ponte tra arduino e asterisk

uhm... non ho capito bene... quindi per la programmazione ho bisogno di un software...

  • Questo software c'è per Linux? Non ho windows

  • Dopo averlo programmato posso metterlo come interno collegato via usb al server?

Grazie e scusate per la mia ignoranza!

l'IDE per programmarlo è in java, quindi multipiattaforma. vedi http://arduino.cc/en/Guide/HomePage

una volta che arduino è stato programmato, puoi collegarlo al server via USB (se hai compilato il kernel, assicurati di aver attivato i driver FTDI, ormai sono di default su tutte le distribuzioni). Il driver FTDI trasforma la tua USB in una seriale simulata.

Quindi sul server dovrai avere anche un programma che faccia da ponte tra arduino e asterisk... e sarà questo programma ad avere un numero interno, poi sinceramente non so come funzioni asterisk, magari puoi fare degli script e usi direttamente asterisk per comunicare con arduino, altrimenti asterisk parla al programma che a sua volta parla con arduino...