Salve a tutti, sono nuovo del forum e vorrei esporvi il mio progetto e il mio problema.
Sono riuscito a far muovere un motore AX12+ Dynamixel con Arduino UNO.
Ora vorrei collegare il PC al Arduino (e anche ad un accelerometro Memsic2125, che ho già testato con il programma-esempio che c'è sul sito) e vorrei chiedere il vostro parere sul Convertitore USB-seriale (Sono un principiante ...).
Mi sembra che non posso prendere qualsiasi convertitore, giusto? E' da
ingenui prendere i pin TX, RX, GND della porta seriale (non so però di quale
chip e marca ...) e usarli?
Nel caso di una marca specifica è necessario, ho letto, che il chip FTDI è
appropriato. Avete schemi o fotografie sulle modalità di connessione
della parte seriale al Arduino? Io non ne ho la minima idea ...
Grazie in anticipo per i vostri suggerimenti!
la seriale ragiona a 12v, arduino a 5v, quindi arduino verrebbe fritto. devi usare un convertitore, il max232 è molto famoso e pieno di esempio su internet. se invece vuoi collegarti via USB i più famosi sono gli FTDI
Grazie lesto,
sai dove posso trovare degli schemi o delle foto per vedere come collegare il convertitore all'Arduino?
perchè io devo usare la libreria NewSoftSerial per comunicare via seriale con arduino e l'ax12 in questo modo:
i pin 2 e 3 di arduino vengono utilizzati con i "softwareserial ", e dovrebbero essere collegati ad un convertitore seriale-USB (FTDI) che a sua volta si collega al PC ed è monitorato con Putty. Non posso utilizzare per questo il convertitore USB-seriale incluso nella Arduino, dal momento che i pin 0 e 1 sono fisicamente saldati...per questo mi servirebbe uno schema o una foto per vedere come collegare il convertitore all'arduino!
p.s.dato che io devo ancora acquistare il convertitore potresti per favore dirmi la marca di un convertitore adatto al mio progetto?magari puoi lasciarmi il link del sito dal quale posso acquistarlo...
grazie in anticipo e scusami per il disturbo e le eccessive richieste
ciao,
se hai un'arduino UNO non ti serve il convertitore, è già dentro l'arduino
allora i pin 0 e 1 NON sono saldati, se ne sconsiglia l'utilizzo perchè nell'arduino sono collegati col chip dell'usb, con cui puoi programmarlo e anche comunicarci.
una porta seriale NON può parlare contemporanemente con più di un devices, altrimenti succedono casini. quindi i pin 0 e 1 per comunicare col PC con la serial, e i pin 2 e 3 per comunicare con l'ax12 attraverso la NewSoftSerial
Guarda, per comunicare con l'AX12 consigliano tutti di usare i pin 0 e 1. La comunicazione è a 1 Megabit / secondo. ti prendi un convertitore seriale-usb e quello lo colleghi al pc, ad esempio sui pin 2 e 3.
Io ho fatto così e l'AX12 funziona bene e anche la comunicazione seriale con il pc. Ho usato inoltre un Buffer Tri-state (74LS241) per implementare correttamente l' Half Duplex UART-TTL richiesto dai Dynamixel. Il buffer è praticamente obbligatorio se vuoi usare istruzioni particolari, tipo il cambio di indirizzo nel caso in cui tu abbia più Dynamixel collegati in cascata. Se hai un servo solo il buffer non serve.
scusami ma non vedo la necessità di parlare ad un servo a 1Mb/s, tanto non riuscirà a rispondere ai comandi a quella velocità.
Quindi tanto vale usare i pin 0 e 1 per comunicare col PC, visto che è già tutto pronto, e una seriale simulata (max 19200baud/s) per parlare col servo.
Scusa Lesto, ma conosci i Dynamixel? Altrimenti sapresti che vanno a 1 megabit/sec. Non sono mica servi normali. Stanno ai servo normali come la Ferrari sta alle Fiat. Ne puoi collegare 254 in cascata, hanno controllo della velocità e della temperatura, possono essere fatti funzionare a 360 gradi eccetera eccetera. Dai una occhiata alle caratteristiche. Sono veramente interessanti.
no, non li conosco, leggendo avevo intuito che non sono i classici servo(già che funzionino via seriale...), però visto che Juls si dice principante, pensavo che quei servi si potessero far girare a baudrate più bassi in cambio di mantenere la seriale hw libera per la comunicazione PC