Sisukord:

Malerobot Raspberry Pi Lynxmotion AL5D Arm: 6 sammu
Malerobot Raspberry Pi Lynxmotion AL5D Arm: 6 sammu
Anonim
Image
Image

Ehitage see malerobot ja vaadake, kuidas see kõiki peksab!

Seda on üsna lihtne ehitada, kui saate järgida käe ehitamise juhiseid ja kui teil on vähemalt elementaarsed teadmised arvutiprogrammeerimisest ja Linuxist.

Valget mängiv inimene teeb sammu. Selle tuvastab visuaalne tuvastussüsteem. Seejärel mõtiskleb robot ja teeb seejärel sammu. Ja nii edasi …

Võib -olla on selle roboti kõige uudsem asi käigu tuvastamise kood. See visioonikood on kasutatav ka mitmel muul viisil ehitatud malerobotite jaoks (näiteks minu LEGO ehitusega malerobot).

Kuna inimese käigu tunneb ära nägemissüsteem, pole vaja spetsiaalset malelaua riistvara (näiteks pilliroo lülitid või mis iganes).

Minu kood on isiklikuks kasutamiseks saadaval.

Samm: nõuded

Riistvaraehitus
Riistvaraehitus

Kogu kood on kirjutatud Pythonis, mis töötab muu hulgas ka Raspberry Pi peal.

Raspberry Pi on väike, odav (umbes 40 dollarit) üheplaadiline arvuti, mille on välja töötanud Raspberry Pi Foundation. Algne mudel sai oodatust palju populaarsemaks, müües selliseks otstarbeks nagu robootika

Minu robot kasutab Raspberry Pi ja robotkäsi on ehitatud komplektist: Lynxmotion AL5D. Komplekti kuulub servokontrolleri plaat. (Äsja antud link on RobotShopi USA saidile; klõpsake ühel teie riigi, nt Ühendkuningriigi saidilehtede paremas ülanurgas oleval lipul.

Teil on vaja ka lauda, kaamerat, valgustust, klaviatuuri, ekraani ja osutusseadet (nt hiirt). Ja muidugi malenupud ja laud. Ma kirjeldan kõiki neid asju üksikasjalikumalt järgnevates etappides.

Samm: riistvara ehitamine

Riistvaraehitus
Riistvaraehitus

Nagu ma varem märkisin, töötab nägemiskoodi süda mitmesuguste ehitistega.

See ehitis kasutab Lynxmotioni AL5D robotkäepidemete komplekti. Komplekti kuulub SSC-32U servokontrolleri plaat, mida kasutatakse käsivarre mootorite juhtimiseks.

Valisin AL5D, sest käsi peab suutma teha korduvaid täpseid liigutusi ja mitte triivima. Haarats peab saama osade vahele ja käsi peab ulatuma laua kaugemale küljele. Mul oli veel vaja teha mõned muudatused, nagu allpool kirjeldatud.

Raspberry Pi, mida ma kasutan, on Raspberry Pi 3 mudel B+. See räägib SSC-32U plaadiga USB-ühenduse kaudu.

EDIT: Raspberry Pi 4 on nüüd saadaval. Teil on vaja:

  • 15 W USB-C toiteallikas-soovitame ametlikku Raspberry Pi USB-C toiteallikat
  • MicroSD-kaart, mis on laetud NOOBS-iga, tarkvara, mis installib operatsioonisüsteemi (ostke koos Raspberry Pi-ga eellaaditud SD-kaart või laadige NOOBS alla, et kaart ise laadida)
  • Klaviatuur ja hiir (vt hiljem)
  • Kaabel ekraaniga ühendamiseks Raspberry Pi 4 mikro -HDMI -pordi kaudu

Vajasin robotkäe ulatust kaugemale, nii et tegin selles mõningaid väiksemaid muudatusi, kasutades täiendavaid Lynxmotioni osi, mida saab RobotShopist osta:

1. Asendas 4,5-tollise toru 6-tollise vastu-Lynxmotioni osa AT-04, tootekood RB-Lyn-115.

2. Proovisin kasutada täiendavat vedrude komplekti, kuid läksin tagasi ühe paari juurde, kui rakendasin alltoodud punkti 3

3. Pikendas kõrgust, kasutades 1-tollist vahekaugust-Lynxmotioni osa HUB-16, tootekood RB-Lyn-336.

4. Laiendas haaratsi haardeulatust, kasutades varuhaaratsipatju, mis olid kinnitatud mõnede minu käes olnud LEGO varuosade ja elastsete ribade (!) Abil. See toimib väga hästi, kuna toob tükkide tõstmisel paindlikkuse sisse.

Neid muudatusi on näha paremal oleval pildil.

Malelaua kohale on paigaldatud kaamera. Seda kasutatakse inimese käigu määramiseks.

Samm: tarkvara, mis robotit liigutab

Kogu kood on kirjutatud Python 2. Pöördkineetika kood on vajalik erinevate mootorite õigeks liigutamiseks nii, et malenuppe saaks liigutada. Ma kasutan Lynxmotioni raamatukogukoodi, mis toetab mootorite kahemõõtmelist liigutamist, ja olen sellele lisanud oma kolmemõõtmelise koodi, haaratsi nurga ja haaratsi liikumise koodi.

Niisiis, meil on siis kood, mis liigutab tükke, võtab tükke, lossi, toetab en passant jne.

Malemootor on Stockfish - mis suudab võita iga inimest! "Stockfish on üks tugevamaid malemootoreid maailmas. See on ka palju tugevam kui parimad inimeste male suurmeistrid."

Malemootori juhtimise, käigu kehtivuse kinnitamise jms kood on ChessBoard.py

Kasutan sellega liitumiseks mõnda koodi saidilt https://chess.fortherapy.co.uk. Minu kood (ülal) liidestub sellega!

Samm: tarkvara, mis tunneb ära inimese käigu

Olen seda üksikasjalikult kirjeldanud oma maleroboti Lego ehituse juhendis Instructable - seega pole mul vaja seda siin korrata!

Minu "mustad" tükid olid algselt pruunid, kuid värvisin need mattmustaks ("tahvlivärviga"), mis muudab algoritmi paremini muutuvates valgustingimustes.

Samm: kaamera, tuled, klaviatuur, laud, ekraan

Kaamera, tuled, klaviatuur, laud, ekraan
Kaamera, tuled, klaviatuur, laud, ekraan
Kaamera, tuled, klaviatuur, laud, ekraan
Kaamera, tuled, klaviatuur, laud, ekraan

Need on samad, mis minu maleroboti Lego ehituses, nii et mul pole vaja neid siin korrata.

Ainult et seekord kasutasin teistsugust ja oluliselt paremat kõlarit, Lenrui Bluetooth kõlarit, mille ühendan RPi kaudu USB kaudu.

Saadaval aadressidelt amazon.com, amazon.co.uk ja teistest müügikohtadest.

Samuti kasutan nüüd teist kaamerat - HP veebikaamerat HD 2300, kuna ma ei suutnud eelmist kaamerat usaldusväärselt käitada.

Algoritmid toimivad kõige paremini siis, kui malelaual on värv, mis on tükkide värvist kaugel! Minu robotil on tükid valkjad ja pruunid ning malelaud on käsitsi valmistatud kartongist ning heleroheline, millel on vähe erinevusi "musta" ja "valge" ruudu vahel.

Algoritmid vajavad kaamera pardal teatud suunda. Palun kommenteerige allpool, kui teil on probleeme. Käeulatus on piiratud ja seega peaks ruudu suurus olema 3,5 cm.

6. samm: tarkvara hankimine

1. Kalakala

Kui käivitate oma RPi -l Raspbiani, saate kasutada Stockfish 7 mootorit - see on tasuta. Lihtsalt jookse:

sudo apt-get install stockfish

2. ChessBoard.py Hangi see siit.

3. Kood põhineb aadressil https://chess.fortherapy.co.uk/home/a-wooden-chess… Kaasas minu kood.

4. Python 2D Inverse Kinematics raamatukogu -

5. Minu kood, mis kutsub esile kogu ülaltoodud koodi ja paneb roboti liigutusi tegema, ja minu nägemiskood. Hankige see minult, tellides esmalt minu YouTube'i kanali, seejärel klõpsates selle juhendi ülaosas asuval nupul „Lemmik” ja postitades seejärel selle juhendi juurde kommentaari ning ma vastan.

Soovitan: