AS-0.3200 automaatio- ja systeemitekniikan projektityöt



Samankaltaiset tiedostot
Projektityöt. Sami Alaiso, Jyri Lujanen 30. marraskuuta 2009

Peltorobotin akselimoduulin kontrolleri

S Elektroniikan häiriökysymykset. Laboratoriotyö, kevät 2010

AS Automaatio- ja systeemitekniikan projektityöt. Projektisuunnitelma. Peltorobotin akselimoduulin ohjain

Mikrokontrollerikitit - väliraportti

AS Automaatio- ja systeemitekniikan projektityöt

em4 3G, GPRS tai Ethernet Loggaus ja hälytys Analogiset tulot/lähdöt Etäkäyttö Keskus Pienoislogiikat

S Portaalinosturi AS Projektisuunnitelma Oleg Kovalev

AS Automaatio- ja systeemitekniikan projektityöt

Taitaja semifinaali 2010, Iisalmi Jääkaapin ovihälytin

Successive approximation AD-muunnin

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

PM10OUT2A-kortti. Ohje

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

S14 09 Sisäpeltorobotti AS Automaatio ja systeemitekniikan projektityöt. Antti Kulpakko, Mikko Ikonen

S13-02 Linear motor controller for CAN-bus

MSnS-extra PCB v1.0. Kevyt käyttöohje

NiMH Laturi. Suunnittelu Olli Haikarainen

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

S Elektroniikan häiriökysymykset. Laboratoriotyö 1

OMNIA OPINNÄYTETYÖ AMMATTIOPISTO. Diginoppa ICTP09SLG OMNIAN AMMATTIOPISTO

Harjoitustyö - Mikroprosessorit Liikennevalot

Supply jännite: Ei kuormaa Tuuletin Vastus Molemmat DC AC Taajuus/taajuudet

AS Automaatio- ja systeemitekniikan projektityöt

JOHDATUS ELEKTRONIIKKAAN. Oppitunti 2 Elektroniikan järjestelmät

Sähköautoprojekti Pienoissähköauto Elektroniikan kokoonpano Moottoriohjain.

Multivibraattorit. Bistabiili multivibraattori:

Arduino. Kimmo Silvonen (X)

FTR960 RADIODATATOISTIN

GSM OHJAIN FF KÄYTTÖOHJE PLC MAX S03

Electric power steering

SISÄLLYS. SATEL I-LINK 100 MODBUS I/O-konvertteri Käyttöohje, Versio 1.5

7.3. Oheisrautaa. DS

DC-moottorin pyörimisnopeuden mittaaminen back-emf-menetelmällä

A13-03 Kaksisuuntainen akkujen tasauskortti. Projektisuunnitelma. Automaatio- ja systeemitekniikan projektityöt AS-0.

Sähköpajan elektroniikkaa

Elektroniikkalajin semifinaalitehtävien kuvaukset

A11-02 Infrapunasuodinautomatiikka kameralle

Electric power steering

Flash AD-muunnin. Ominaisuudet. +nopea -> voidaan käyttää korkeataajuuksisen signaalin muuntamiseen (GHz) +yksinkertainen

ELEC-C5070 Elektroniikkapaja (5 op)

SM210 RS485 - JBUS/MODBUS mittarille SM102E. Käyttöohje

d) Jos edellä oleva pari vie 10 V:n signaalia 12 bitin siirtojärjestelmässä, niin aiheutuuko edellä olevissa tapauksissa virheitä?

111570SF CS60. Liitäntä- ja määritysopas Ohjausautomatiikka

EMC Mittajohtimien maadoitus

TIES530 TIES530. Moniprosessorijärjestelmät. Moniprosessorijärjestelmät. Miksi moniprosessorijärjestelmä?

WT KÄYTTÖOHJE WT-1010_käyttöohje_ pdf. GSM-välitin hälytysjärjestelmille

AS Automaatio- ja systeemitekniikan projektityöt - Projektisuunnitelma

A14-11 Potilaan mittaustiedon siirtäminen matkapuhelimeen

Pienitehoisen keinokuorman suunnittelu ja rakentaminen. AS Automaation ja systeemitekniikan projektityöt Lauri Mäkelä, Henrik Vento 4.2.

Moottorin lämpötilan mittauksen kytkeminen taajuusmuuttajaan

Ohjelmistoradio. Mikä se on:

Superintend VR-16 Vikavirtarele 5-johdinverkkoihin Lyhyt käyttöohje

Hammastankohissin modernisointi. Heikki Laitasalmi

IIZE3010 Elektroniikan perusteet Harjoitustyö. Pasi Vähämartti, C1303, IST4SE

ELEC-C1110 Automaatio- ja systeemitekniikan. Luento 11 Esimerkki automaation soveltamisesta

Ohjelmoitava päävahvistin WWK-951LTE

AS Automaatio- ja systeemitekniikan projektityöt

ELEC-A4010 Sähköpaja Arduinon ohjelmointi. Jukka Helle

LOPPURAPORTTI Lämpötilahälytin Hans Baumgartner xxxxxxx nimi nimi

TAITAJA 2006, Elektroniikka ( /OL) Hakkurivirtalähteen kokoaminen ja testaaminen, Nokia

Tehtävään on varattu aikaa 8:30 10:00. Seuraavaan tehtävään saat siirtyä aiemminkin. Välipalatarjoilu työpisteisiin 10:00

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

Asennusohje. EasyLine GSM

A13-03 Kaksisuuntainen akkujen tasauskortti. Väliaikaraportti. Automaatio- ja systeemitekniikan projektityöt AS Syksy 2013

ELEKTRONISET TOIMINNOT

2 Jannitelähde 24 V 28 V 7,5 A

Ohjelmoitava päävahvistin WWK-951. Anvia TV Oy Rengastie Seinäjoki

1 Muutokset piirilevylle

KÄYTTÖOHJE PEL / PEL-M

PAVIRO End Of Line Slave Module

MFW - I/O:n kaukoluentajärjestelmä

GateWay v10 Laitekuvaus

Elektroniikan perusteet, Radioamatööritutkintokoulutus

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

14. Luento: Kohti hajautettuja sulautettuja järjestelmiä. Tommi Mikkonen,

Projektisuunnitelma. Projektin tavoitteet

Logiikan rakenteen lisäksi kaikilla ohjelmoitavilla logiikoilla on myös muita yhteisiä piirteitä.

S14 09 Sisäpeltorobotti AS Automaatio ja systeemitekniikan projektityöt. Antti Kulpakko, Mikko Ikonen

Kontrollerin tehonsäätö

1 f o. RC OSKILLAATTORIT ja PASSIIVISET SUODATTIMET. U r = I. t τ. t τ. 1 f O. KAJAANIN AMMATTIKORKEAKOULU Tekniikan ja liikenteen ala

Verilogvs. VHDL. Janne Koljonen University of Vaasa

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

Automaatio- ja systeemitekniikan projektityöt 2013

A15 - Inertial Measurement Unit

Jaetun muistin muuntaminen viestin välitykseksi. 15. lokakuuta 2007

A/D-muuntimia. Flash ADC

Pulssilaskuri ja I/O-konvertteri. Käyttöohje Versio 1.2

VIP X1600 XFM4 VIP-X1600-XFM4A/VIP-X1600-XFM4B. Pika-asennusopas

Väylään liitettävä laite: Pheonix Contact ILB PB DI8 DIO8

Taitaja2008, Elektroniikkalajin semifinaali

L-sarjan mittamuuntimet

Mark Summary. Taitaja2015. Skill Number 602 Skill Elektroniikka. Competitor Name

AS Automaatio ja systeemitekniikan projektityöt A13 10 Radio ohjattavan pienoismallin ohjausjärjestelmän ja käyttöliittymän kehittäminen

KÄYTTÖOHJE TEHR LU / TEHR-M

smartallinone Sarjaliikenteellä toimiva releohjain

CLPD ja FPGA piirien arkkitehtuuri ja ominaisuudet

S11-04 Kompaktikamerat stereokamerajärjestelmässä. Väliraportti

FIN

Transkriptio:

AS-0.3200 automaatio- ja systeemitekniikan projektityöt Yleiskäyttöinen CAN-ohjain Sami Alaiso, Jyri Lujanen

Sisältö 1 Yleistä 2 1.1 Hardware............................................... 3 1.2 Software................................................ 3 2 CAN-väylä 4 3 Fyysinen konstruktio 5 3.1 AVR-CAN -moduuli......................................... 5 3.2 Tulomoduuli............................................. 6 3.3 Lähtömoduuli............................................. 7 3.4 Lista komponenteista......................................... 8 4 Laitteen protokolla 9 4.1 Laitteen vastaanottama viesti.................................... 9 4.2 Laitteen lähettämä viesti...................................... 10 5 Jatkokehitys 11 6 Projektin kulku 12 1

1 Yleistä Projektityön tarkoituksena oli suunnitella ja toteuttaa yleiskäyttöinen CAN-ohjain, jolla voidaan vastaanottaa viestejä CAN-väylältä, sekä myös lähettää tiladataa. Vastaanotettujen CAN-viestien perusteella ohjataan transistoreja, joiden avulla voidaan ohjata erilaisia aktuaattoreita. Toteutetussa laitteessa on saavutettu haluttu toiminnallisuus seuraavasti: Kuva 1: Toteutetun laitteen toiminnallisuus lohkokaaviotasolla Tarkastellaan kutakin lohkoa tarkemmin 8kpl digitaalinen tulo: Laitteessa on riviliittimet kahdeksalle digitaaliselle tulolle jännitteenjakomahdollisuuksin. 4kpl analoginen tulo: Laitteeseen voidaan kytkeä 4 analogista signaalia. Kullekin tulolle on mahdollista toteuttaa jännitteenjako sekä RC-suodatus. CAN-viesti: Prosessori lukee väylältä sekä kirjoittaa väylälle CAN-viestejä (versio 2.0 B, extended frame) 4kpl PWM-ohjaus: Lähtöpuolella on neljä maahan kytkevää low-side -transistoria, joissa on lisäksi pulssinleveysmodulointimahdollisuus. 4kpl digitaaliohjaus: Lähtöinä on myös neljä jännitteeseen kytkevää high-side -transistoria, joilta saadaan lisäksi suuntaa-antavaa tietoa kuorman virrankäytöstä. Listataan lyhyesti laitteen tärkeimmät ominaisuudet: Tulot Taulukko 1: Laitteen tärkeimmät ominaisuudet 8kpl digitaalinen, 4kpl analoginen Lähdöt 4kpl PWM, 4kpl digitaalinen Käyttöjännite 10V-24V Suurin sallittu virta 2A CAN-versio 2.0 B CAN-väylänopeus 250kbit/s 2

Käytännössä projektin työvaiheet voidaan redusoida kahteen osa-alueeseen: 1.1 Hardware Projektin ehdottomasti työläämpi osa oli itse fyysisen konstruktion suunnittelu sekä kokoonpano. Projektissa toteutettiin kaksi piirilevyä käyttäen EagleCad -ohjelmistoa, sekä automaatio- ja systeemitekniikan laboratoriosta löytyvää jyrsintä. Työvaihe alkoi komponenttien valinnalla, joka osoittautui oletettua haastavammaksi tehtäväksi laitteen yleiskäyttöisen luonteen vuoksi. EagleCad-ohjelmiston käyttökokemuksen puutten vuoksi myös piirilevyjen suunnittelu vei huomattavasti resursseja. Fyysisellä puolella helpoimmaksi osaksi osoittautui komponenttien ladonta ja juottaminen piirilevylle, joskin tälläkin osa-alueella joitakin ongelmia ilmeni. Fyysinen konstruktio on toteutettu kahdessa osassa; omat piirilevyt valmistettiin sekä tulo- että lähtöpuolille omiksi moduuleikseen. Tähän ratkaisuun päädyttiin jo siksi, että liittimet sekä komponentit vaativat paljon tilaa piirilevyillä. 1.2 Software Mikrokontrollerin (AT90CAN128 ) ohjelmointi osoittautui oletettua helpommaksi tehtäväksi, pääosin valmiiden kirjastojen olemassaolon ansiosta. CAN-viestien lukeminen ja kirjoittaminen oli abstrahoitu em. kirjastoissa varsin hyvin muutamaksi funktioksi, joiden avulla kommunikointi saatiin toimimaan lähes välittömästi. Myös annettu JTAG-ohjelmointilaite suostui yhteistyöhön varsin vähällä konguroinnilla. 3

2 CAN-väylä Controller area network (jatkossa CAN-väylä) on useimmiten ajoneuvosovelluksissa käytettävä tietoväylä, joka on suunniteltu sulautettuja järjestelmiä silmälläpitäen. Se mahdollistaa oheislaitteiden kommunikoinnin keskenään ilman palvelinarkkitehtuuria. Myöhemmin CAN-väylää ollaan käytetty myös rautatiesovelluksissa, teollisuuden automaatiojärjestelmissä sekä terveydenhuollon ja lääketeollisuuden laitteissa, pääasiassa sen vikasietoisuuden johdosta. Väylän kehitti alunperin saksalainen ajoneuvojen elektroniikkaan erikoistunut yritys Bosch. Väylän arkkitehtuuri ja protokolla on vahvasti standardoitu, joskin eri versioita ja väylänopeuksia löytyy useita. Toteutetussa projektissa käytetään versiota 2.0 B ja väylänopeutta 250kbit/s. CAN-väyläarkkitehtuuri tuntee spesikaatioidensa mukaan neljä eri viestityyppiä, jotka ovat 1. Data frame, joka sisältää 0-8 tavua dataa 2. Remote frame, joka ei sisällä itsessään dataa, mutta jota voidaan käyttää oheislaitteiden herätteenä 3. Error frame, viestityyppi joka välitetään kun oheislaite havaitsee väylällä virheen 4. Overload frame, viesti, jolla saadaan luotua viivettä data- tai remote -viestien välille Koska projektityössä käytetään yksinomaan data frame -viestejä, käydään niiden yleinen rakenne läpi lyhyesti. Käydään viestin osat läpi lyhyesti: Kuva 2: Data frame -viestin rakenne Start of frame: 1 bitti, joka määrittää viestin alkukohdan Arbitration eld: sisältää identier-osan, jossa on datan tunniste sekä mahdollinen remote transimission request -osa, joka määrittää onko viesti ns. remote frame Control eld: 6 bitin mittainen osa, jonka kaksi ensimmäistä bittiä ovat varattuja, ja 4 seuraavaa bittiä (DLC ) määrittävät dataosan pituuden Data eld: 1-8 tavun mittainen osa, joka sisältää viestin varsinaisen datan CRC eld: 15 bitin jono, joka sisältää datan varmennekoodin ACK eld: 2 bittiä datan vastaanottoon liittyviä toimintoja End of frame: 7 bittiä jotka merkkaavat viestin päättymistä 4

3 Fyysinen konstruktio Rakennetun laitteen fyysiset osat voidaan jakaa karkeasti kolmeen moduuliin kuvan mukaisesti: Kuva 3: CAN-ohjaimen moduulit 3.1 AVR-CAN -moduuli Työn keskeisenä komponenttina käytettiin Olimex -merkkistä AVR-CAN -moduulia, joka sisältää itsessään AT90CAN128 -mikrokontrollerin sekä liittimet sen kaikille porteille. Lisäksi moduulissa on JTAG -ohjelmointirajapinnan liittimet sekä RS232 -liittimet CAN-väylää varten. Tarkan listan moduulin ominaisuuksista saa valmistajan kotisivuilta. Kuva 4: AVR-CAN -moduuli AVR-CAN -moduuli sijoittu fyysisesti laitteen keskelle, jolloin tulomoduuli kytkeytyy sen EXT1 -porttiin, ja lähtömoduuli kytkeytyy sen EXT2 -porttiin. 5

3.2 Tulomoduuli Kuva 5: Tulomoduulin liitännät Tulomoduulissa on riviliittimet kahdeksalle digitaaliselle tulolle (DI1-DI8) sekä neljälle analogiselle tulolle (AI1-AI4). Kaikille tuloille on mahdollista toteuttaa jännitteenjako. Lisäksi digitaalituloille voidaan CAN-viestillä asettaa ylösvetovastus mikrokontrollerin puolelta, jolloin tulo tulkitaan kytkeytyneeksi kun sen signaaliterminaali kytketään maahan. Jokaisella digitaalitulolla on kaksi terminaalia riviliittimillä, joista toinen johtaa maahan, ja toiseen tulee varsinainen signaali. Katsotaan digitaalitulon kytkentäkaaviota. Kuva 6: Digitaalitulon kytkentäkaavio Kuvassa nähdään yhden digitaalitulon terminaalit riviliittimillä. Toiseen terminaaliin kytketään jännitesignaalin maataso, toiseen itse signaali. Signaaliterminaalissa on jännitteenjakovastukset ennen signaalin pääsyä mikrokontrollerille. Jotta kontrolleri tulkitsee digitaalitulon oikein, on sen saatava maatasoon nähden vähintään 2.5V jännite jännitteenjaon jälkeen. Mikäli jännitteenjakovastukset ohitetaan esimerkiksi hyppylangoin, ei digitaalitulon terminaalien potentiaaliero saa ylittää 5V ohjearvoa. Tarkastellaan seuraavaksi analogiatuloja. 6

Kuva 7: Analogiatulon kytkentäkaavio Tulomoduulissa on riviliittimet neljälle analogiatulolle (AI1-AI4), joista voidaan lukea mikrokontrollerin -muuntimen avulla jännitearvo 8-bittisellä resoluutiolla. Kullekin analogiatulolle on toteutettavissa jännitteenjako sekä RC-suodatus. Kytkentäkaaviossa nähdään sekä RC-suodatin että jännitteenjako. Jokaisella analogiatulolla on kaksi terminaalia siten, että toiseen on kytkettävä maa, ja toiseen haluttu jännite siten että jännitteenjaon jälkeen mikrokontrollerille näkyvä suurin jännite on korkeintaan 5V. 3.3 Lähtömoduuli Kuva 8: Analogiatulon kytkentäkaavio Lähtömoduulista löytyvät riviliittimet neljälle maahan kytkevälle low-side -transistorille (PWM1-PWM4), sekä neljälle jännitteeseen kytkevälle high-side -transistorille (HS1-HS4). Jokaista lähtöä voidaan ohjata ennalta määritellyn CAN-viestin avulla tämän dokumentin kappaleen 4.1 mukaisesti. Lähtömoduulista löytyy myös liitin laitteen käyttöjännitteelle V in. Low-side -transistorien pulssinleveysmoduloitu signaali toimii n. taajuudella 3kHz, resoluution ollessa 8- bittinen. Kullekin PWM-lähdölle on riviliittimillä 2 terminaalia, joista toinen kytkeytyy tulojännitteeseen V in, ja toinen transistorin lähtöön. High-side -puolella terminaalit ovat maataso sekä transistorin lähtö. Highside -transistoreista saadaan myös suuntaa-antavaa tietoa kuorman läpi kulkevasta virrasta kappaleen 4.2 osoittamalla tavalla. Tulojännitteelle on huomioitava, että laite toimii oikein suurimmalla todennäköisyydellä, kun 10V V in 24V. 7

3.4 Lista komponenteista Tulopuoli: 2kpl 8-terminaalinen riviliitin 2kpl 4-terminaalinen riviliitin 24kpl vastuksia jännitteenjakoa varten 4kpl vastuksia suodattimia varten 4kpl kondensaattoreita suodattimia varten 34-pinninen naarasliitin (liitetään AVR-CAN -moduuliin) 4kpl 33kΩ vastuksia smart-fettien diagnostiikkavirtasignaalia varten Lähtöpuoli: 1kpl regulaattori TS7810CZ 4kpl smart-fet BTS133IN-ND 4kpl smart-fet BTS5014SDAINCT-ND 4kpl transistori BS170 4kpl 4-terminaalinen riviliitin 1kpl 2-terminaalinen riviliitin 2kpl kondensaattoreita regulaattorille 34-pinninen naarasliitin (liitetään AVR-CAN -moduuliin) 4kpl alasvetovastuksia BS170-transistoreille 8kpl jännitteenjakovastuksia Lisäksi: johdinta 8

4 Laitteen protokolla Laitteen ohjaamiseen kehitettiin protokolla, jolla haluttu toiminnallisuus saadaan aikaan. Koska laitteelta saadaan verrattain paljon mittausdataa, on sen lähettämä viesti rakennettu kahdesta erillisestä data framesta. Tuloviestin kriittinen data saatiin mahdutettua yhteen data frameen. Käydään läpi viestien rakenne yksityiskohtaisesti. 4.1 Laitteen vastaanottama viesti Vastaanotettava viesti on 8 datatavua sisältävä data frame, jonka tavut ovat määrätty seuraavasti: Tavu 0 Taulukko 2: Tuloviestin rakenne tavutasolla 1 2 3 4 5 6 7 - PWM1 PWM2 PWM3 PWM4 DO DIP - - Alkuarvo 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 Tarkastellaan vielä kutakin tavua yksityiskohtaisesti PWM1: Määrittää ensimmäisen PWM-ulostulon (PWM1) pulssisuhteen 8 bitin resoluutiolla siten, että syötetty arvo 0x00 on pienin mahdollinen pulssisuhde (transistori on jatkuvasti suljetussa tilassa) ja 0xFF on suurin mahdollinen pulssisuhde (transistori on jatkuvasti johtavassa tilassa). PWM2: Määrittää toisen PWM-ulostulon (PWM2) pulssisuhteen 8 bitin resoluutiolla. PWM3: Määrittää kolmannen PWM-ulostulon (PWM3) pulssisuhteen 8 bitin resoluutiolla. PWM4: Määrittää neljännen PWM-ulostulon (PWM4) pulssisuhteen 8 bitin resoluutiolla. DO: Tavun neljä merkitsevintä bittiä määräävät jännitteeseen kytkettyjen high-side -transistorien tilan seuraavasti Bitti 7 6 Taulukko 3: Tuloviestin tavu DO 5 4 3 2 1 0 - HS4 HS3 HS2 HS1 - - - - Alkuarvo 0 0 0 0 - - - - Tavun DO neljä vähiten merkitsevää bittiä ovat varattuja, eikä niiden manipulointi aiheuta minkäänlaista toiminnallisuutta DIP: Määrittää digitaalisten tulojen ylösvetovastusten tilan siten, että bitti 0 asettaa digitaalitulon 1 ylösvetovastuksen aktiiviseksi, bitti 1 digitaalitulon 2 jne. Lähetettäessä viestiä laitteelle tulee tiettyjen ehtojen olla voimassa: viestin dataosan on oltava täsmälleen 8 tavun mittainen, sekä viestin tunnisteen on oltava oikea. Laitteen prototyyppiversiolle tunniste on 0x63 eli desimaalilukuna 99. Lisäksi on muistettava käyttää extended frame -tunnisteita, muutoin laite ei vastaanota viestejä. Väyläpuolella tulee lisäksi varmistaa, että väylänopeus on 250kbit/s. 9

4.2 Laitteen lähettämä viesti Laite lähettää periodisesti tilatietoaan kahdessa viestissä, joiden viesti-id:t ovat 0x64 ensimmäiselle viestille ja 0x65 toiselle viestille. Tarkastellaan kutakin viestiä yksityiskohtaisesti, aloittaen ensimmäisestä. Taulukko 4: Ensimmäisen tilaviestin rakenne tavutasolla Tavu 0 1 2 3 4 5 6 7 - VID DI HS - AI1 AI2 AI3 AI4 VID: Viesti-ID. Tämä on paluuviestin ensimmäiselle osalle aina 1, toiselle osalle 2. DI: Digitaali-inputit. Tavun jokainen bitti kuvaa kunkin digitaali-inputin tilaa seuraavasti. Taulukko 5: Digitaaliset inputit (tavu DI) Bitti 7 6 5 4 3 2 1 0 - DI8 DI7 DI6 DI5 DI4 DI3 DI2 DI1 HS: High-side -lähdöt. Tavu ilmaisee kunkin high-side transistorin todellisen tilan siten, että looginen 1 merkkaa lähdön olevan kytkeytynyt. Taulukko 6: High-side -lähdöt (tavu HS) Bitti 7 6 5 4 3 2 1 0 - - - - - HS4 HS3 HS2 HS1 AI1-AI4: Analogiset inputit. Kuvaa kutakin analogista tuloa 8 bitin resoluutiolla siten, että arvo 0x00 kuvaa pienintä mahdollista lukua ja arvo 0xFF suurinta. Tarkastellaan seuraavaksi laitteen tilaviestin toista osaa. Taulukko 7: Toisen tilaviestin rakenne tavutasolla Tavu 0 1 2 3 4 5 6 7 - VID - - - HSV1 HSV2 HSV3 HSV4 VID: Viesti-ID. Tämä on paluuviestin ensimmäiselle osalle aina 1, toiselle osalle 2. HSV1-HSV4 High-side -virta: Kuvaa high-side -puolelle kytketyn kuorman läpi kulkevaa virtaa siten, että arvo 0x00 kuvaa hyvin vähäistä virtaa (I L 100mA), ja arvo 0x87 (135dec) n. arvoa I L 2A. 10

5 Jatkokehitys Jatkokehityksen kannalta projektityössä saatiin luotua hyvä pohja. Mahdollisista kehitysideoista päällimmäisenä voisi nähdä jonkinlaisen käyttöliittymän. Tähän asti laitetta on testattu ja käytetty lähettämällä raakoja CAN-viestejä, jolloin laitteen käyttö voi olla asiaan vihkiytymättömälle henkilölle vaikeaa ilman dokumenttien huolellista selaamista. Jatkokehittäjät voisivat esimerkiksi tutkia, onko jollekin kehityskielelle olemassa valmiita CAN-kirjastoja, joiden avulla käyttöliittymän luonti olisi helppoa. 11

6 Projektin kulku Projektin aloitus oli erinäisistä syistä ongelmallinen. Varsinaisen työn pariin päästiin käytännössä siinä vaiheessa, kun muut ryhmät olivat jo palauttaneet puoliväliraportin. Tämä luonnollisesti pakotti pidempiin työrupeamiin, mikä ei kuitenkaan ollut varsinainen ongelma. Jonkinasteisesta kiireestä johtuen projektitekniset muodollisuudet jäivät hieman taka-alalle, joskin työn ohjaajan kanssa ehdittiin pitämään monta hyvää kehityskeskustelua aiheesta. Listataan projektin pääkohdat sekä niihin allokoidut resurssit: Taulukko 8: Projektin osa-alueet ja niihin käytetty aika Projektin osa-alue Kaavailtu ajankäyttö Toteutunut ajankäyttö Komponenttien valinta 5 10 Piirilevyjen suunnittelu 10 20 Ohjelmoinnin toteutus 30 15 Fyysinen konstruointi 15 15 Testaus ja debuggaus 30 40 Dokumentointi 10 10 Yhteensä 100 110 Ylläolevasta taulukosta voidaan tehdä johtopäätös siitä, että projekti osoittautui software-kehitystä lukuunottamatta odotettua työläämmäksi. Ehdottomasti aikaavievin vaihe oli testaus ja debuggaus, joka lukuisten ongelmien takia söi resursseja. Yhtenä suurimmista ongelmista mainittakoon high-side -transistorien yhteensopimattomuus mikrokontrollerin kanssa. Ongelma saatiin myöhemmin ratkaisua asettamalla levylle lisää transistoreja, mutta ratkaisun löytäminen söi jopa kohtuuttomasti työtunteja. Epäilemättä työvaiheen vaatima aika olisi saatu leikattua huomattavasti pienemmäksi huolellisemmalla suunnittelulla ja paremmalla elektroniikan tuntemuksella. Kaiken kaikkiaan projektissa päästiin tavoitteisiin, ellei niitä jopa ylitetty. Projektiteknisesti suoritus oli vaatimaton johtuen erinäisistä aikataulullisista ongelmista. Työn ohjaaja Matti Öhman neuvoi tarvittaessa hyvin, joskin neuvoa kysyessä pelkkä neuvo olisi varsin usein riittänyt kädestä pitäen -tyylisten esimerkkien sijaan. Itse työn esittelytilaisuus sujui ongelmitta, ja pääpaino oli itse toiminnallisuuden esittelyssä. 7 Liitteet Liitteinä löytyvät dokumentit: Tulomoduulin kytkentäkaavio Lähtömoduulin kytkentäkaavio AVR-CAN -moduulin kytkentäkaavio luotu C-koodi 12