Mida oleks vaja teha:
Pink on mõeldud pick & place masinaks, see kasjastub ka tarkvaras. Põhimõtteliselt on võimalik pinki juhtida kasutades olemasolevat tarkvara, kuid sellega kaasnevad mõned piirangud ja üksjagu ebamugavust. Tuleks tutvuda kontrolleri tööga ja kindlaks teha, millised signaalid jooksevad loogikaplaadi ja draiveri/(jõu)plaadi vahel - täiesti reaalne võimalus on, et tegemist on standartsete signaalidega. Viimane tähendaks aga, et mootorite draivereid on võimalik juhtida otse tavalise arvutiga.
Probleemid: Liikumisel tekib umbes x-telje keskel vibratsioon ja müra. Esmavaatlusel ei leidnud nimetatud nähtuste põhjust. Võimalikke põhjuseid on mitmeid. Ilma kuulkruvisüsteemi laiali lammutamiseta on ilmselt väga raske kindlaks teha, milles probleem on. Selge pole ka, kuidas vibratsioon mõjutaks näiteks spindli külge kinnitatud freesi liikumist.
Roboti mudel: CRWQ-H2010APHT-11.5-7-2LL-B
TÄHTIS: Kontrolleri süsteemiplaadil (HPC-740A) peab jumper X kindlasti olema DN asendis ja Y, Z, W UP asendis. Vastasel juhul ei suuda robot x-telge ära kalibreerida.
Mudel: HAC-644CE-4 Ver E
Pärast mitmeid katseid selgus, et robot suudab läbida etteantud punktid A, B, C ja D ilma punktides B ja C peatumata vaid siis, kui robotile on kogu teekond ette teada. Andes kontrollerile liikumiskäske „MOVE“ ükshaaval, peatub ta pärast iga liigutust ja liikumine toimub seetõttu ebaühtlase kiirusega, kogu aeg vaheldumisi pidurdades ja kiirendades.
Praegu on lihtsaim viis robotile teekonna etteteatamiseks positsioonide faili (*.pos) laadimine kontrollerisse, kasutades HARL3 programmeerimiskeskkonda. Seejärel on võimalik robotit liikuma panna kahel moel.
Hetkel peab teekonda kirjeldama käsitsi. Tulevikus on plaanis luua programm, mis tekitab *.pos faili etteantud G-koodidest. Siis saab hakata arvutiga loodud joonisest automaatselt CNC roboti juhtimiseks vajalikke andmeid tekitama. Käsitsi kirjutamiseks on soovitatav kasutada HARL3 programmeerimiskeskkonda, sest *.pos failistruktuuri ei kirjeldata üheski kasutusjuhendis. Lihtsa kujundi saab edukalt käsitsi sisestada, teades järgnevat.
Positsioonidemälu on patareitoitega ning ei kustu ka roboti väljalülitamisel. Seega, näiteks kui saadad kontrollerile N-realise positsioonidefaili, aga eelnevalt oli seal olemas juba N+1 realine fail, siis kirjutatakse üle ainult esimesed N mälupesa ja sellist programmi käivitades liigub robot pärast N positsiooni läbimist edasi N+1 positsioonini.
Kontrolleri programmeerimisel peab teadma järgmist. Mehhatroonikatudengite loodud „Laisa mehe doomino“ programm kontrolleris kasutab positsioonide salvestamiseks P-mälu. Selle mälu elemente (teekonna punkte) saab muuta ka komponenthaaval. Näiteks saab lihtsasti suurendada X-koordinaati 20,75 mm võrra, jättes kõik teised koordinaadid samaks. Kui tahad, et robot liiguks punkti P7, siis selleks on käsk MOVE #Robot, P7. Robot liigub mälupesaga P7 defineeritud punkti ja peatub, isegi kui kohe ette anda uus punkt.
Sujuvaks liikumiseks ilma vahepunktides peatumata peab kasutama PM-mälu. Selle komponente ei saa ühe käsuga ükshaaval muuta. Näiteks Z-koordinaadi muutmiseks pead ajutiselt kasutama P-mälu:
P0 = REF (#Robot, PM100) ' kopeeri PM-mälu 100. mälupesa P-mälu 0. pessa PZ0 = PZ0 - 10 ' vähenda P-mälus Z-koordinaati 10 mm võrra REF (#Robot, PM100) = P0 ' kopeeri punkti koordinaadid tagasi PM-mälusse
Kui nüüd kasutada liikumiskäsku MOVE #Robot, PM100, siis hakkab robot liikuma alates punktis PM0 kuni esimese ettejuhtuva peatumiskäsuni või tühja mälupesani või kui selliseid ei tulegi, siis peatub robot alles pärast 999. mälupesas olnud punktini jõudmist. Seega kui täiesti tühja PM-mällu kirjutada 100. mälupessa mingi koordinaat, siis selleni ei jõuta, sest juba esimene mälupesa on tühi.
PM-mälu ongi see mälu, millesse HARL3 keskkonnas saab laadida *.pos faili sisu. P-mälu saab kasutada ainult kontrollerisse laetud programmist, mitte juhtpuldist.
Robot suudab enda asendit mõõta 0,02 mm täpsusega. See aga ei tähenda, et ta alati nii täpselt liigub. Kasutuskõlbliku täpsuse saavutamiseks võib abi olla järgmistest nõuannetest.
Selleks on kirjutatud C# programm: