Kamera ohjelmoidaan ensin tunnistamaan kortit ja lähettämään tieto sarjaliikenneporttiin Data-linkin avulla.



Samankaltaiset tiedostot
LUKUJA, DATAA KÄSITTELEVÄT FUNKTIOT JA NIIDEN KÄYTTÖ LOGIIKKAOHJAUKSESSA

Työ 1: Logiikka ja robotti

2 Konekieli, aliohjelmat, keskeytykset

LOAD R1, =2 Sijoitetaan rekisteriin R1 arvo 2. LOAD R1, 100

Ohjeita Siemens Step7, Omron CX Programmer käyttöön

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli

P I C A X E O H J E L M O I N T I

PROBYTE GSM ALARM #6d

Ongelma(t): Miten tietokoneen komponentteja voi ohjata siten, että ne tekevät yhdessä jotakin järkevää? Voiko tietokonetta ohjata (ohjelmoida) siten,

1 Muutokset piirilevylle

PROBYTE kallistusnäyttöautomatiikka

STEP-404 askelmoottoriohjain PROBYTE/Pekka Ritamäki

SATAKUNNAN AMMATTIKORKEAKOULU Sähkötekniikan koulutusohjelma. M-koodit Omron servojen ohjauksessa. Luovutettu. Hyväksytty

KÄYTTÖOHJE CELOTRON GSM LÄMPÖPUMPPUOHJAIN

FORMULA 1 RACE MASTER

SAVUKAASUJEN VALVONTAKESKUS 1/6 HYDROSET ER - O2

Ongelma(t): Miten mikro-ohjelmoitavaa tietokonetta voisi ohjelmoida kirjoittamatta binääristä (mikro)koodia? Voisiko samalla algoritmin esitystavalla

Tällä ohjelmoitavalla laitteella saat hälytyksen, mikäli lämpötila nousee liian korkeaksi.

TAITAJA 2007 ELEKTRONIIKKAFINAALI KILPAILIJAN TEHTÄVÄT. Kilpailijan nimi / Nro:

Laboratoriotyö. 1. Laitteisto. 1.1 Kamera

Modbus-tiedonsiirtoväylän käyttöönotto

AXCARD AXCARD PR JOHDANTO 2. LUKIJAN KÄYNNISTYS

Java-kielen perusteet

TAMPEREEN TEKNILLINEN YLIOPISTO

ITKP102 Ohjelmointi 1 (6 op)

Operaatiovahvistimen vahvistus voidaan säätää halutun suuruiseksi käyttämällä takaisinkytkentävastusta.

IDL - proseduurit. ATK tähtitieteessä. IDL - proseduurit

ATK tähtitieteessä. Osa 3 - IDL proseduurit ja rakenteet. 18. syyskuuta 2014

Adafruit Circuit Playground Express

Johdatus Ohjelmointiin

Muuttujatyypit ovat Boolean, Byte, Integer, Long, Double, Currency, Date, Object, String, Variant (oletus)

Synco TM 700 säätimen peruskäyttöohjeet

TKT224 KOODIN KOON OPTIMOINTI

1 YLEISTÄ. Taitaja2002, Imatra Teollisuuselektroniikkatyö Protorakentelu 1.1 PROJEKTIN TARKOITUS

SafeLine VA4 Käyttöohjeet

KAUKOVALVONTAOHJELMA CARELAY CONTROL WPREMOTE

KÄYTTÖOHJE ILMAVERHOT vesilämmitys R 515 MAN. / AUT.

KÄYTTÖOHJE PEL 1000 / PEL 1000-M

Arduino ohjelmistokehitys

Ohjeita. Datan lukeminen

Perinteiset tietokoneohjelmat alkavat pääohjelmasta, c:ssä main(), jossa edetään rivi riviltä ja käsky käskyltä.

Altus RTS. 1 Tekniset tiedot: 2 Lähetin: Telis 1 Telis 4 Centralis RTS

Tyyppejä ja vähän muutakin. TIEA341 Funktio ohjelmointi 1 Syksy 2005

Ohjelmointiharjoituksia Arduino-ympäristössä

TIEP114 Tietokoneen rakenne ja arkkitehtuuri, 3 op. Assembly ja konekieli

TAMPEREEN TEKNILLINEN YLIOPISTO

SUMO-ROBOTTI. Tehtävä

Luento 5. Timo Savola. 28. huhtikuuta 2006

Esimerkki: Laskin (alkua) TIEA341 Funktio ohjelmointi 1 Syksy 2005

1. Yleistä. 2. Ominaisuudet. 3. Liitännät

TALOMAT Light. asennus- ja käyttöohje T104

Siemens TIA Portal V11

NOOX xperio herätyskello valvontakamera

Electronisen nopeus ja matkamittarin kalibrointi laite huippunopeus muistilla.

PEM1123/ A. Asennus- ja käyttöohje SW/S2.5 viikkokello. ABB i-bus KNX. SW/S2.5 Viikkokello

Python-ohjelmointi Harjoitus 5

Moottorin kierrosnopeus Tämän harjoituksen jälkeen:

Ohjelmassa henkilön etunimi ja sukunimi luetaan kahteen muuttujaan seuraavasti:

Tietotyypit ja operaattorit

ROBOTIIKAN LABORATORIOTYÖ 2 ( )

Käyttöjärjestelmän rakenne

4B. Tasasuuntauksen tutkiminen oskilloskoopilla.

Käyttöönotto-opas RT Controller

Alkuarvot ja tyyppimuunnokset (1/5) Alkuarvot ja tyyppimuunnokset (2/5) Alkuarvot ja tyyppimuunnokset (3/5)

Virtuoosi POS-järjestelmien joukossa

Käyttöohje Thermo Call TC3. Yleisiä ohjeita. Käyttämisestä. Hyvä Webaston käyttäjä

8. Näppäimistöltä lukeminen 8.1

JYRSIN SISÄLLYSLUETTELO:

S11-09 Control System for an. Autonomous Household Robot Platform

Voimanoton aktivointi automaattivaihteistossa. Yleisiä tietoja toiminnosta. Aktivointiehdot. Pysyvät turvallisuusehdot. Valinnaiset turvallisuusehdot:

Nokeval No Käyttöohje. Tekstinäyttö 580-ALF

SISÄLLYSLUETTELO RC-436

Taulukot. Taulukon määrittely ja käyttö. Taulukko metodin parametrina. Taulukon sisällön kopiointi toiseen taulukkoon. Taulukon lajittelu

- Käyttäjä voi valita halutun sisääntulon signaalin asetusvalikosta (esim. 0 5V, 0 10 V tai 4 20 ma)

PROBYTE CONTROL GSM. GSM/SMS-hälytys- ja ohjauslaite. GSM Control 7/11/01 sivu 1/5

Java-kielen perusteet

FAMOS PROTEC. Edistykselliset. Kuumasaumaajat

C-kielessä taulukko on joukko peräkkäisiä muistipaikkoja, jotka kaikki pystyvät tallettamaan samaa tyyppiä olevaa tietoa.

Datatähti 2019 loppu

SM211 RS485 - JBUS/MODBUS mittarille SM103E. Käyttöohje

Ohjelmoinnin perusteet Y Python

GSRELE ohjeet. Yleistä

ITKP102 Ohjelmointi 1 (6 op)

MicaFlex MF-PFCP Asennus- ja käyttöohje

DENVER TCD-55 SUOMALAISET KÄYTTÖOHJEET

TEKNIIKAN YKSIKKÖ AUTOMAATIOTEKNIIKAN KOULUTUSOHJELMA AUT4SN TL7341 PROJEKTITYÖ OSA1 LEIPÄJUUSTON VALMISTUSLINJAN LOPPUPÄÄ

KÄYTTÖOHJE TEHR LU / TEHR-M

Aurinko-C20 V asennus ja käyttöohje

KÄYTTÖOHJE CD/MP3-SOITIN FM-RADIOLLA JA USB-LUKIJALLA

Pörisevä tietokone. morsetusta äänikortilla ja mikrofonilla

Ohjausjärjestelmien jatkokurssi. Visual Basic vinkkejä ohjelmointiin

,&20,&+7. Modifiointi V0.1. by OH2LFV

C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. C-ohjelma. Operaatioiden suoritusjärjestys

Aurinko-C20 asennus ja käyttöohje

Metodien tekeminen Javalla

Lapin Veikot suunnistusjaosto Iltarastien tulospalveluohjeet versio Pentti Poikela

dametric AGS-anturi HUOLTOKÄSIKIRJA AGS-XXX Service Manual FI.docx Lokakuu 12, 2010 / BL Sivu 1 (8)

AU Automaatiotekniikka. Funktio FC

PIIRIANALYYSI. Harjoitustyö nro 7. Kipinänsammutuspiirien mitoitus. Mika Lemström

Transkriptio:

Ohjausjärjestelmien jatkokurssi kevät 2006 Laboraatiot 7-12 Laboraatio 7. Konenäkö robotiikassa Konenäkökamera liitetään robottiohjaimeen. Järjestelmä ohjelmoidaan niin, että robotti lajittelee kappaleita kameralta saamansa informaation perusteella. Kameran ja robottiohjaimen ohjelmat viritetään toimimaan ensin erillisinä ja laitteet liitetään sitten yhteen. 7.1 Kamera ohjelmoidaan ensin tunnistamaan kortit ja lähettämään tieto sarjaliikenneporttiin Data-linkin avulla. Sarjaliikenneparametrit asetetaan olemaan 9600, Even, 8 databittiä 2 stop-bittiä Lähetettävä merkkijono määritellään olemaan String1 jne Kamera määritellään toimimaan ulkoisella liipaisulla External trigger Onnistunut tulkinta esim kortista pata tuottaa sitten merkkijonon PATA Robotti tarvitsee merkkijonon aikanaan muodossa PRNPATA Toiminta testataan kytkemällä sarjaliikennekaapeli mikron sarjaporttiin ja käynnistämällä mikrossa Hyper Terminal, jonka Tietoliikenneparametrit asetetaan samoiksi Kameran lähettämän merkkijonon pitäisi näkyä ruudulla

7.2 Robotti ohjelmoidaan lajittelemaan kortteja eri pinkkoihin saamansa kameran viestin perusteella Robotti ohjelmoidaan liipaisemaan kameran kuvaus lähdöllään 4 silloin, kun se on käännellyt kortin oikeaan paikkaan. Lähtö 5 on johdotettu ohjaamaan imukuppia. Mallina on kaavailu robottiohjelmaksi Oikea asento selvitetään kääntelemällä robottia käsiohjauksella Silloin robotin pitää olla Teach-tilassa ja käsiohjaimessa avain Enable- asennossa ja kuolleen miehen kytkin ja Servo pidettynä pohjassa Asento on luettavissa tietokoneen COSIROP-ohjelman paikkatietoihin Online...Robot position -> PC Robotti ohjelmoidaan lukemaan kortin tieto sarjaliikenneportista INPUT #1,C1$ ja kopiomaan sen jälkeen vientipaikka taulukosta if ehdolla kuvatunkaltaisella komennolla IF C1$= PATA THEN POS3=POS13 ENDIF Tämän jälkeen kortti viedään ohjelmoituun paikkaan ja haetaan seuraava Ohjelman rakennekaavailu on erillisellä liitteellä.

7.3 Toiminta testataan antamalla robotille tieto kortista Hyper Terminalilla Sarjaliikenneparametrit asetetaan olemaan 9600, Even, 8 databittiä 2 stop-bittiä Tieto kortista esim PATA pitää antaa muodossa PRNPATA ja vielä rivinvaihto perään 7.4 Robotti ja kamera liitetään toisiinsa sarjaliikenneyhteydellä ja ohjelmoidaan lajittelemaan kortteja eri pinkkoihin kameran viestin perusteella

Laboraatio 8. PID-säätö ja tietokonevalvomo Paineproportionaaliventtiilillä tehdään pneumaattisen lihaksen liikkeen ja voiman hallinta. Ohjaaviksi laitteiksi kytketään ohjelmoitava logiikka, johon viritetään säätöpiiri 8.1 Logiikkaan ohjelmoidaan kolme Network-sääntöä, joilla paikkatieto potentiometrilta saadaan näkymään muistisanassa D0, painetieto propoventtiililtä muistisanassa D1 ja paineen ohjearvo propoventtiilille muistisanassa D3 Ohjelman monitorointitilassa toimintaa testataan syöttämällä muistisanaan D3 erilaisia ohjearvoja 8.2 Säätöpiiristä tehdään versio, jossa paikan ohjearvo voidaan syöttää muistisanaan D5 Tätä verrataan paikan oloarvoon D0 ja jos ei olla halutussa paikassa, korjataan paineen ohjearvoa ylös- ja alaspäin laskien logiikan matemaattisilla funktioilla. Jotta toiminnasta ei tule liian levotonta, korjauksia kannattaa tehdä ohjelmoiduin aikavälein. 8.3Säätöpiiristä tehdään versio, jossa käytetään logiikan PIDfunktiota Sille määritellään ohjearvon, oloarvon ja lähtöarvon muistisanojen osoitteet ja parametrien muistisanojen alkuosoite, esimerkiksi D10 Muistiosoitteissa D10...D35 on sen jälkeen PID-säätimen toimintaan vaikuttavat parametrit Niitä Entry Data Monitor Online-tilassa korjaten haetaan parametrit kohdalleen niin, että paikan ohjearvon muutoksen jälkeen järjestelmä hakeutuu uuteen paikkaan

8.4Tietokonevalvomo käyttöliittymäksi E-view tietokonevalvomo määritellään logiikan käyttöliittymäksi. Valvomoon määritellään kolme Digitaalista panelimittaria, joiden numeroikkunat liitetään paikan ohjearvon antamisessa ja todellisen paikan näyttämisessä ja paineen ohjearvolähdön näyttämisessä käytettyihin datamuistisanoihin Haettaessa panelimittari kirjastossa se pitää purkaa Ungroup Tämän jälkeen numeroikkunan ominaisuuksia Properties voidaan muutella ja liittää ikkuna halutun ohjaimen Controller, joka tässä on Mitsubishin FX1S-logiikka, haluttuun muistisanaan esim D1 Mitä muistisanoja yms on tarjolla löytyy katsomalla yhteyden määrittelyvaiheessa vihjeitä Hints Toiminta testataan antamalla paikkaohjearvoja valvomon RUNtilassa Huom! CX IEC Developer ja valvomo eivät voi olla molemmat yhtäaikaa hallitsemassa logiikan sarjaporttia ja siksi Online-tilassa.

Laboraatio 9. Logiikkapaikoitus moottoriohjaimen avulla Ohjelmoitava logiikka kytketään ja ohjelmoidaan toteuttamaan halutut liikkeet moottoriohjauksessa käyttäen hyväksi pulssitakaisinkytkentää magneettinauha-anturilta ja moottoriohjaimen hallintaa analogialähdöllä. 9.1Moottoriohjain kytketään ohjaamaan tasavirtamoottorin pyörimistä. Moottoriohjaimen ohjejännite 0..10 V tuodaan erilliseltä virtalähteeltä 9.2. Ohjejännite moottoriohjaimelle tuodaan logiikan analogialähdöltä Logiikkaan ohjelmoidaan Network-sääntö, joilla analogialähtöön vietävä jännitteet ohjearvo kerrotaan muistisanassa D3 Ohjelman monitorointitilassa toimintaa testataan syöttämällä muistisanaan D3 erilaisia ohjearvoja 9.3.Logiikkaan ohjelmoidaan toiminnat, joilla se laskee pulsseja magneettinauha-anturilta nopeaan pulssituloonsa. Pulssilaskurin nollautuminen ohjelmoidaan tapahtumaan takarajakytkimellä. Logiikkaan ohjelmoidan toiminta, jolla se saadaan peruuttamaan takarajalla käsipainikkeen avulla. Sen päällä ollessa ja kun ei olla takarajalla kopioidaan analogialähdön ohjesanaan 4 voltin jännitettä vastaava ohjearvo MOV-funktiolla. Tämä kannattaa jättää logiikkaohjelman viimeiseksi riviksi.

9.4 Logiikkaan ohjelmoidaan toiminnat, joilla se vertaa paikkaohjearvoa todelliseen paikkaan ja ajaa moottoria eteenja taaksepäin korjaamalla matemaattisesti analogialähtönsä ohjearvoa ylös- ja alaspäin laskien logiikan matemaattisilla funktioilla. Paikan vertailun, olo- ja ohjearvojen kohdalla on huomattava, että nopean pulssilaskurin talletussana on 32 bitin sana, Double Integer. Kiinteinä muistiosoitteina se käyttää 2 sanaa esim D0+D1 Pulssilaskennan osoitteita kerrottaessa kannattaa käyttää vain joka toista datasanaa. Vertailijoiden sanojen on oltava keskenään samantyyppisiä Jotta toiminnasta ei tule liian levotonta, korjauksia kannattaa tehdä ohjelmoiduin aikavälein. Ylä- ja alarajan ylittäminen estetään vertailijoilla. Analogiaviestien muistisanat ovat tyypiltään 16 bitin muistisanoja, esim D3 Ohjelman monitorointitilassa toimintaa testataan syöttämällä paikkaohjeelle erilaisia ohjearvoja

Laboraatio 10. PWM-Moottoriohjaus Ohjelmoitava logiikka kytketään hallitsemaan tasavirtamoottorin liikenopeutta ja paikoitusta pulssinleveysmodulaatiolla. 10.1Akku, MOSFET-tehotransistori ja tasavirtamoottori kytketään ajovirtapiiriin HUOM! Transistorin kotelossa olevan estosuuntaisen diodin vuoksi transistorin napaisuutta EI SAA kytkeä väärinpäin. Tehty kytkentä dokumentoidaan piirrokseksi 10.2 Ohjelmoitava logiikka kytketään hallitsemaan tasavirtamoottorin liikenopeutta antamalla tehotransistorin kannalle PWM-ohjausta transistorilähdöllään. Sopiva ohjejännite on 10 V, ei yli 20 V. 10.3Logiikkaan ohjelmoidaan sääntö, joka tuottaa em lähtöön käyttäjän määrittämillä arvoilla PWM-signaalia. Toiminta testataan muuttamalla ohjearvoa Online Monitor tilassa 10.4Logiikkaan ohjelmoidaan säännöt, joilla nopeusohjearvoa korjataan ylös- ja alaspäin kahdella katkaisijalla Kiihdytä/Hidasta Jotta toiminnasta ei tule liian levotonta, korjauksia kannattaa tehdä ohjelmoiduin aikavälein. Ylä- ja alarajan ylittäminen estetään vertailijoilla.

10.5 Ajettavaksi moottoriksi vaihdetaan moottori, jossa on pulssitakaisinkytkentä. 10.6. Logiikkaan ohjelmoidaan toiminnat, joilla se laskee pulsseja pulssianturilta nopeaan pulssituloonsa. Pulssilaskurin nollautuminen ohjelmoidaan tapahtumaan käsipainikkeella. Logiikkaan ohjelmoidaan toiminnat, joilla se vertaa paikkaohjearvoa todelliseen paikkaan ja ajaa moottoria korjaamalla matemaattisesti PWMohjearvoa ylös- ja alaspäin laskien logiikan matemaattisilla funktioilla. Paikan vertailun, olo- ja ohjearvojen kohdalla on huomattava, että nopean pulssilaskurin talletussana on 32 bitin sana, Double Integer. Kiinteinä muistiosoitteina se käyttää 2 sanaa esim D0+D1 Pulssilaskennan osoitteita kerrottaessa kannattaa siksi käyttää vain joka toista datasanaa. Vertailijoiden sanojen on oltava keskenään samantyyppisiä Jotta toiminnasta ei tule liian levotonta, korjauksia kannattaa tehdä ohjelmoiduin aikavälein. Ylä- ja alarajan ylittäminen estetään vertailijoilla. PWM-ohjauksessa käytettävät muistisanat ovat tyypiltään 16 bitin muistisanoja, esim D3 Ohjelman monitorointitilassa toimintaa testataan syöttämällä paikkaohjeelle erilaisia ohjearvoja

11.1 Laboraatio 11. Käyttöpaneeli logiikan ja paikoitusohjaimen käyttöliittymänä Toiminta: Katkonta-automaatti, jonka käyttöliittymän kautta Kerrotaan Haluttu pituus Kerrotaan Haluttu kappalemäärä Nollataan laskuri Nähdään laskurin nykyarvo Käyttöpaneli kytketään ja ohjelmoidaan toimimaan logiikan ja servo-ohjaimen käyttöliittymänä. Servo-ohjain ohjelmoidaan ajamaan jokaisella käynnistyksellä rekisteri- tai datamuistiin ohjelmoitu matka eteenpäin antamaan sen jälkeen logiikalle kättelytieto ja odottamaan logiikalta kättelyä, jonka jälkeen poistetaan logiikalle lähetetty kättely ja ollaan valmiina uuteen käynnistykseen Ohjelmointiohjelma on Servo Config SW 11.2Käyttöpaneli ohjelmoidaan niin, että sen kautta voidaan kertoa servo-ohjaimen ohjelman käyttämän rekisteri- tai datamuistin arvo. Ohjelmointiohjelma On E-Designer Toiminta testataan ajamalla servo-ohjainta käsipainikkeilla

11.3Logiikka ohjelmoidaan niin, että se, jos ollaan alle tavoitteen ja käynnityspainike on pohjassa Antaa servo-ohjaimelle käynnistyskäskyn ja poistaa vanhan kuittauksen Odottaa servon perilläolotietoa Kytkee päälle toisen lähdön 5 sekunniksi (katkaisu) Poistaa servon käynnistyskäskyn ja Kuittaa servolle tehneensä työn Tätä toistetaan, jos laskurin oloarvo on alle ohjearvon Laskurina voidaan käyttää mm laskuria CTU Sen nollaukseen käytetään muistipaikkaa esim M1 Laskurin oloarvo ohjataan Datamuistisanaan esim D1 Toistojen hallinta tehdään vertailijalla esim Less Than, LT, jolla laskurin oloarvoa verrataan toiseen datamuistisanaan esim D2 kerrottuun ohjearvoon Toiminta testataan ohjaamalla muistipaikan M1 ja datamuistisanojen arvoja Entry Data Monitor Onlinetilassa 11.4Käyttöpaneli ohjelmoidaan siten, että panelilla voidaan ohjata ja seurata Servo-ohjaimen paikkaohjetta Logiikan lukumäärän ohjearvoa Logiikan katkaistujen kappaleiden määrää Kosketuspainikkeella nollata laskuri Tämä tapahtuu liittämällä käyttöpanelin instrumentteja servo-ohjaimen ja logiikan muistisanoihin ja logiikan laskurin nollaavaan muistipaikkaan

Laboraatio 12. Teollisuustietokoneiden yhteistyö FESTO IPC-tietokoneet ohjelmoidaan hallitsemaan syöttö- ja testausasemaa siten, että kappaleita syötetään hallitusti laitteilta toiselle. Tietokoneiden välisillä kättelytuloilla/lahdöillä estetään yhteentörmäykset silloin, kun toinen laite on toisen alueella. Ohjelmien kehittäminen aloitetaan käyttäen mallina laitteissa olevia ohjelmia. Tulojen ja lähtöjen nimiä muutetaan tarvittaessa selkeämmiksi Allocation List-taulukossa. Ohjelmissa suositaan pääohjelma/aliohjelmarakennetta, jossa pääohjelma seuraa hallintalaitteita ja kiertää jatkuvaa nopeaa luuppia. Tähän päästään käyttämällä ohjelma-askelissa OTHRW NOP-rakennetta, joka päästää aina askeleesta ulos Aliohjelmissa suositaan sensijaan askeltavaa rakennetta, jossa ohjelma-askelissa odotetaan ehdon toteutumista ennen kuin suostutaan jatkamaan. Ohjelmointi- ja hallintaohjelma on FST4 Silloin, kun logiikka ei ole ajotilassa, tuloja voidaan tutkia ja lähtöjä ohjata vapaasti mikrolta Aina ohjelmamuutosten jälkeen ne on ladattava IPChen ja käynnistettävä ohjelman suoritus. Jotta lähdöt toimisivat, laitteisto on kuitattava kytkimellä. Ohjelman toimintaa voidaan seurata Online-tilassa. Muokkaamiseen päästään siirtymällä takaisin Edit-tilaan