Robotické rameno

Erik

Robotické rameno
« kdy: 10. 09. 2015, 17:27:23 »
Dobrý deň potrebujem robiť strednú odbornú činnosť... rozhodol som sa pre robotické rameno. Mal som na pláne urobiť to na vysielačku 35Mhz. Profesor mi povedal aby som to urobil (ovládal) cez PC. Čo mi treba aby som servo motory mohol ovládať cez PC.


Kit

Re:Robotické rameno
« Odpověď #1 kdy: 10. 09. 2015, 17:41:31 »
Pokud to má být ovládané bezdrátově z PC, použil bych:
  • převodník USB<->RS232 TTL
  • dvojici vysílač-přijímač, obojí s I/O RS232 TTL
  • Arduino Mini Pro
  • servomotorky
  • software pro Arduino
Kromě toho posledního se to dá vše koupit v obchodě, dohromady za cca 200 Kč. No a ten soft si napíšeš.

Pokud by to mělo být propojeno drátem, volil bych jiné komponenty a bylo by to mnohem jednodušší.

Pavouk106

  • *****
  • 2 400
    • Zobrazit profil
    • Můj blog
    • E-mail
Re:Robotické rameno
« Odpověď #2 kdy: 10. 09. 2015, 17:51:11 »
Pokud by to mělo být propojeno drátem, volil bych jiné komponenty a bylo by to mnohem jednodušší.
ad. "jiné komponenty" - například:
  • Arduino s USB rozhraním (tedy již s převodníkem USB<->RS232, což jsou téměř všechny Arduina)
  • servomotorky
  • software pro Arduino


Erik

Re:Robotické rameno
« Odpověď #4 kdy: 10. 09. 2015, 18:27:19 »
Mohol by som nato pripojiť 6 servo motorov ?


Kit

Re:Robotické rameno
« Odpověď #5 kdy: 10. 09. 2015, 18:53:35 »
Mohol by som nato pripojiť 6 servo motorov ?

Pokud to chceš propojit kabelem, tak viz odpověď od Pavouk106.

6 servomotorů je maximum, co ATmega328 zvládne. Navíc ho budeš muset kvůli tomu mírně SW modifikovat (na pinech 5 a 6 jede dvakrát rychleji, než jak potřebuješ). PWM totiž běží jen na pinech D5, D6; D9, D10; D3, D11.

To

Re:Robotické rameno
« Odpověď #6 kdy: 11. 09. 2015, 00:09:53 »
To, že to nejde jednoduše naprogramovat v Arduinu ještě neznamená, že ta Atmega328 nezvládne těch serv podstatně víc a ještě se bude v mezičase šťourat v nose. Viz ukázka zde:

http://jhorobin.blogspot.cz/2013/01/cara-menggunakan-servo-controller-ssc32.html


Robtek

Re:Robotické rameno
« Odpověď #7 kdy: 11. 09. 2015, 00:29:53 »
Vaše návrhy mi přijdou přímo blbé.

Já bych to ovládal přímo z PCčka, třeba přes COM port.  ::)

USB to COM: http://www.srovnanicen.cz/q/usb%20redukce%20RS-232/

Jak to zapojit?
http://www.computerports.net/wp-content/uploads/image/db9_pinout.jpg

V situaci, kdy máme jen tři výstupy si snadno poradíme.
Třetí výstup vybírá motor třeba pomocí jednoduchého posuvného registru.
První výstup říká krok vpřed
Druhý třeba krok vzad

Mám k tomu pět vstupů, spolu s výběrem motoru tak můžu vybírat i čidla.
(Ruka na konci je jen další motor a já bych tam dal jen elektromagnet.)
...

Robtek

Re:Robotické rameno
« Odpověď #8 kdy: 11. 09. 2015, 00:35:56 »
Start ramene:
Výběr motoru 0 pomocí posuvného registru, vypnu napájení, takže cokoliv rameno drží, právě pustilo.
Výběr motoru 1 dávám krok zpět do doby, než mám odezvu od čidla "výchozí pozice"
Výběr motoru 2 ....

Teď mám rameno ve výchozí pozici.
Výběr motoru 0
Mám pět čidel, jedno čidlo detekuje to, jestli je rameno ve výchozí pozici, druhé "čidlo" mi říká, jestli magnet je zapnutý, ... čídlo 5 mi říká, že světelná závora je přerušená, takže se na ploše X nachází něco, co můžu přenést, říkejme tomu kovová krabička ve vzhledu kontejneru
Výběr motoru 6 a otočím ramenem do pozice orientace k X nebo o určitý počet kroků
Výběr motoru ....
Rameno je nastavené přímo nad předmět
Výběr motoru 0, zapnu proud do elektromagnetu
Zvedám rameno, přenáším klumpr na pozici...
Vím, kolik kroků má motorek udělat atd...

A nemusím se kadit s programováním atmega, tu můžu nahodit až ve chvíli, kdy mi rameno šlape jako hodinky.

Robtek

Re:Robotické rameno
« Odpověď #9 kdy: 11. 09. 2015, 00:45:25 »
A když už jsme u toho, udělal bych to jako automatický nakladač na vláček.
Hrát si s vláčky je blbost, ale já si můžu světelnou závorou spočítat počet vagónů a překládat materiál z jednoho vlaku do druhého.

Přijede vláček A, vím, že má 5 vagónů, vlak B má vagónů deset, každý má přesně určenou pozici.
Motorů mám sice jen třeba 6, takže každý motor má 5 čidel, ale mám posuvný registr, takže klidně můžu mít 6 motorů, ale sad čidel můžu mít daleko víc. Takže motor 0 je magnet, "motory" 7 až 10 nemají žádné motory ale jen čidla....

Vlaky bych sestavoval náhodně, jeden má tři vagónky, další pět.
Budu nakládat kancelářské sponky z nákladní lodi :-D
Tedy, pokud mám motor 0 jako elektromagnet nakonci, měl bych mu přidělat tři úrovně, úroveň HH slouží pro sbírání sponek.
Nižší úroveň H slouží pro sklepnutí několika sponek, když se rameno trochu zvedne a přebytečné sponky sklepnu.
Znovu přepínám na úroveň HH, abych žádnou sponku neztratil.

...

prezek

  • ***
  • 229
    • Zobrazit profil
Re:Robotické rameno
« Odpověď #10 kdy: 11. 09. 2015, 09:11:40 »
Robteka prosím neposlouchej. Elektro mě živí (serva, ventily, mikroprocesory...) a při čtení jeho příspěvků mám pocit, že se mi rozpouští mozek.

Arduino moc neznám, ale myslím, že pro začátečníka je to nejjednodušší volba.

https://www.arduino.cc/en/Reference/Servo
Citace
The Servo library supports up to 12 motors on most Arduino boards and 48 on the Arduino Mega

Pavouk106

  • *****
  • 2 400
    • Zobrazit profil
    • Můj blog
    • E-mail
Re:Robotické rameno
« Odpověď #11 kdy: 11. 09. 2015, 09:19:35 »
Chcem to prepojiť káblom... mohlo by byť toto ATmega328
http://www.aliexpress.com/item/2pcs-lot-DCCduino-UNO-Improved-Version-ATmega328-for-Arduino-UNO-R3-USB-Cable-Blue/32258583147.html?spm=2114.01020208.3.188.VrnXHm&ws_ab_test=201407_4,201444_5,201409_5
Ano, mohlo by být třeba tohle. Pozor, ať si nespálíš jednotlivý vstupy/výstupy (vysokym proudem nebo vysokym vstupnim napětim z čidel), jinak je to v pohodě zařízení a užiješ si s ním srandu (i trápení :-D ).

Erik

Re:Robotické rameno
« Odpověď #12 kdy: 11. 09. 2015, 15:11:23 »
Ok vďaka chlapci... rozhodol som sa preto arduino.

Yarda

Re:Robotické rameno
« Odpověď #13 kdy: 12. 09. 2015, 09:23:25 »
Dřív, dokud byl v PC standardně LPT (nebo jak se to správně jmenovalo) port, další se dal doplnit a operační systém dovoloval jednoduchý přístup na tenhle port, tak řešení bylo jednodušší. Třeba tady
http://simandl.cz/stranky/elektro/minigraf/minigraf.htm
je popis, jak ovládat minigraf - dva krokové motorky a polohu pisátka.

Kit

Re:Robotické rameno
« Odpověď #14 kdy: 12. 09. 2015, 11:37:40 »
Dřív, dokud byl v PC standardně LPT (nebo jak se to správně jmenovalo) port, další se dal doplnit a operační systém dovoloval jednoduchý přístup na tenhle port, tak řešení bylo jednodušší. Třeba tady
http://simandl.cz/stranky/elektro/minigraf/minigraf.htm
je popis, jak ovládat minigraf - dva krokové motorky a polohu pisátka.

Na zmíněné stránce je sice program pro DOS, ale chybí tam zdrojáky.

To rozhraní se jmenuje Centronics a v PC ho stále mám. Umožňuje obousměrnou komunikaci a toho se využívalo. Dnes tuto roli převzalo USB, které má mnohem méně omezení, je rychlejší a také je použitelnější. Minigraf už nemusíš ovládat jednotlivými kroky motorků, ale můžeš využít mnohem pohodlnější jazyk HPGL, který nacpeš do toho Arduina.