1 Titelblad. Synopsis Denne rapport omhandler et autonomt robotsystem bygget op omkring microcontrolleren MSP430 fra Texas Instruments.

Størrelse: px
Starte visningen fra side:

Download "1 Titelblad. Synopsis Denne rapport omhandler et autonomt robotsystem bygget op omkring microcontrolleren MSP430 fra Texas Instruments."

Transkript

1 1 Titelblad P3-projekt: Robot til autonom husovervågning Gruppe: DE3-3-e08 Vejleder: Mikael Svenstrup Synopsis Denne rapport omhandler et autonomt robotsystem bygget op omkring microcontrolleren MSP430 fra Texas Instruments. Rapporten består af tre dele: MSP430 teori Implementering Robottests Rapporten fremviser arbejdet med opbygning af en autonom robot, som det er lykkedes projektgruppen at få til at køre både autonomt og manuelt. Udarbejdet af: Henrik Bayer Nielsen Jonas Benjamin Hansen Glen Thane Seested Abdiladif Ahmed Hassan Johnny Johnson Sada 1

2 2 Forord Denne rapport er udarbejdet i forbindelse med P3 projektperioden i efteråret 2008 med afslutning i januar Projektets tema er microprocessorbaserede. I forbindelse med projektet er der blevet fremstillet et produkt i form af en autonom robot. I rapporten vil denne fremstå som eksempel på anvendelse af elektronik og datateknik i forbindelse med microprocessorbaserede systemer. I rapporten er først opstillet en problemstilling og en kravspecifikation. Disse er efterfulgt af et teoriafsnit omhandlende microcontrolleren MSP430 fra Texas Instruments. Teoriafsnittet har til formål at skabe en forståelse af hvordan en microcontroller arbejder. Formålet er her at danne grundlag for forståelse af implementeringen af en microcontroller, der beskrives i de efterfølgende rapportafsnit. Gennemgang af implementeringen er opdelt i to hovedafsnit. Det første en beskrivelse af hardwaredelen til projektets autonome robot. Her beskrives de komponenter der er anvendt for at få robotten til at køre. Der er desuden vedlagt relevante sider fra databladene som bilag bagerst i rapporten. Det andet afsnit omhandler softwaredelen af robotten, som består af et C program indeholdende adskillige filer. Der er desuden foretaget en række tests på robotten som er dokumenteret i rapporten, afsnit 10. Rapporten afsluttes med en konklusion. Kildehenvisninger, bilag og appendiks er at finde bagerst i rapporten. På den vedlagte CD-ROM er følgende at finde: Fulde udgaver af datablade for alle anvendte komponenter. Programkoden for MSP-programmet Programkoden for terminal-programmet Video af alle system test Rapporten i.pdf-udgave 2

3 Kildehenvisninger Der henvises til kilder ved brug af tal i klammer således: [##]. Står tallet ved siden af en overskrift til et afsnit, er afsnittet baseret på kilden, dvs. kilden er anvendt ekstensivt for at skrive afsnittet. Står kilderne inde i selve teksten, betyder det at der kun er brugt en lille del af kilden, f.eks. en påstand. Ved bøger henvises kilden i klammer med efterfølgende sidetal: [##,sidetal] Store dele af rapporten er desuden baseret på to tekster fra Texas Instruments. Disse er: MSP430x1xx Family User s guide (SLAU049F) [1] Datablad for MSP430x13x, MSP430x14x (SLAS272D) [2] 3

4 3 Indholdsfortegnelse 1 Titelblad Forord Indholdsfortegnelse Indledning Problemstilling Kravspecifikation Design af system MSP Introduktion CPU Registre Digital I/O Interrupt PWM Clock ADC Timere Seriel kommunikation (USART/UART) Implementering Dimensionering af robotten Hardwareopbygning Takometer Motorstyring Afstandssensor Beregningshastigheder Takometer MSP

5 9.4 Softwareopbygning Programmets opbygning Motorstyring Encoder PWM Sensor Serial Terminal Test af robot Test af afstandssensor Specificering af test Test og konklusion Test af motorer Specificering af motortest Test Delkonklusion Test af system Specificering og konklusion Konklusion Litteraturliste Appendiks Schmitt Trigger

6 4 Indledning Embeddede autonome robotsystemer er et felt med mange potentialer med anvendelser inden for adskillige arbejdsområder. Autonom overvågning, kortlægning og orientering er af interesse inden for et væld af områder. Indledende vil disse områder kort blive gennemgået. I hjemmet er autonome robotter ved at vinde indpas i form af eksempelvis automatiske støvsugere og græsslåmaskiner, der selv navigerer rundt. Som eksempel indenfor overvågning kan nævnes stationære automatiserede kameraer der følger bevægelse. Derved kan der sikres gode billeder af Indbrudstyve eller røvere. Autonome robotter kan også anvendes til detektion af landminer og sprængstoffer i krigszoner, hvor arbejdsmiljøet er meget risikofyldt. Halvautonome robotsystemer kan også anvendes til maritim kortlægning og landmåling. Indenfor vanddybdemåling og maritim forskning kan menneskers tilgængelighed til havbunden være et problem. I sådanne tilfælde kan der anvendes en AUV, et automatisk undersøisk fartøj. Som eksempel kan nævnes det norske HUGIN projekt ved Kongsberg Maritime, der både anvendes civilt til forskning og militært til detektion af undervandsminer. [3] Militært anvendes ubemandede luftfartøjer kaldet UAV ere. Det amerikanske firma General Atomics fremstiller Predator-dronen, der bl.a. bruges af det amerikanske luftvåben i Mellemøsten. Droner anvendes til overvågning og kortlægning samt præcisionsangreb på bygninger. [4] Derudover anvendes autonome robotter især til rumfart. Komplekse systemer til navigation og meget andet bruges i satellitter og rumfartøjer. Men ses der nærmere på autonom husovervågning, så kan dette også finde forskellige anvendelser. Til overvågning af huse kan det f.eks. antages at en indsatsstyrke ville danne sig et overblik over hvordan et specifikt hus ser ud 6

7 inden i. Til dette kan der anvendes en lille autonom robot for hvilken det er muligt at navigere rundt i lokalerne i huset. Det kunne også være, at flere autonome robotter med påsatte kameraer, rutinemæssigt kan overvåge lokaler i et hus. Disse ville kunne overvåge et større område end stationære overvågningskameraer, hvorved antallet af overvågningsenheder kunne reduceres. Dette kan være hensigtsmæssigt i større bygninger, hvor det er muligt for robotterne at sende et trådløst videofeed til en overvågningscentral. Denne rapport vil begrænse sig til autonom husovervågning og kun den autonome robots færden i lokaler. Selve kameraovervågningen tages ikke i betragtning i denne rapport. 7

8 5 Problemstilling Ud fra et projektoplæg er følgende problemformulering blevet lavet: Hvordan opbygges og implementeres en robot til autonom husovervågning? Projektafgrænsning Fra et givent projektoplæg er det blevet valgt at arbejde med en autonom robot. På grundlag oplægget skal der laves et selvstændigt projekt. Det er målet at fremstille en robotprototype, dvs. et eksempel på hvordan en robot kunne opbygges. Et færdigt produkt er ikke målet, og robotten bygges derfor op af LEGO, da dette er mere tilgivende for eventuelle ændringer i konstruktionen. Det skal understreges at fokus er sat på microprocessorsystemer, og at det er dette rapporten omhandler. Der skal anvendes en programmerbar enhed så som en microcontroller til styring af robotten. Desuden skal der bruges motorer til hvilke der skal opbygges et motorstyringskredsløb. For at gøre robotten autonom, skal den desuden have inputs fra op til flere sensorer. 8

9 6 Kravspecifikation Ud fra projektafgrænsningen er de primære krav for projektet blevet opstillet, en kombination af hardware og software der skal gøre robotten i stand til at navigere sig rundt i et lokale samt opmåle det. For at dette kan realiseres indenfor projektets tidsrammer har vi opstillet følgende krav: Krav til lokalet: Gulvet skal være jævnt For at undgå meget komplekst arbejde med sensorer skal hjørnerne i lokalet være retvinklede. Ydermere er det et sådant område robotten skal designes til. For at undgå komplikationer med manøvrering lokalet mindst være 2 gange 2 meter i areal, men ikke nødvendigvis kvadratisk. Krav til hardware: Robotten skal kunne køre frem og tilbage, samt rotere både til venstre og til højre. Robotten skal, ved hjælp af afstandssensorer, kunne registrere samt undvige eventuelle forhindringer. Ved hjælp af sensorer skal robotten kunne fastlægge, samt eventuelt visualisere dens tilbagelagte rute. Det er et krav at ovenstående skal realiseres sammen med brugen af en microcontroller. Krav til embedded software: Den embeddede software skal kunne modtage samt bearbejde informationer fra de forskellige sensorer. Den embeddede software skal ydermere ved hjælp af sensorernes output navigere robotten uden om forhindringer. Krav til terminal software: Det skal være muligt at styre robotten manuelt. Derudover skal der være mulighed for at skifte mellem autonom og manuel styring. 9

10 7 Design af system For at kunne opfylde kravspecifikationen, udarbejdes der et system. Dette system indeholder: Robot Terminal Microcontroller Motor Sensor Distancemåler Selve robotten laves i LEGO. Dette skyldes både den lette tilgængelighed, samt at eventuelle ændringer i konstruktionen kan foretages uden unødvendig ekstra arbejde. Dette ville ikke være muligt hvis robotten eksempelvis skulle laves af metal. Samtidig vil robottens vægt også blive holdt nede, hvilket giver mindre belastning på de anvendte motorer. Dimensioneringen af robotten er beskrevet senere i Afsnit 9.1 For at kunne styre robotten skal der i systemet også være en terminal. Til denne benyttes en computer, der ved hjælp af seriel forbindelse til microcontrolleren, kan sende og modtage data til og fra microcontrolleren. Selve microcontrolleren i systemet er af typen MSP430F149. Fra starten af projektet blev denne stillet til rådighed, og da denne microcontroller indeholder de perifære enheder der skal benyttes udover de eksterne enheder nævnt i dette kapitel, har der ikke været grundlag for en udskiftning af denne. Robotten har samtidig brug for en form for fremdrift. Til dette anvendes to motorer. Robotten er udstyret med to baghjul, hvorpå de to motorer er tilsluttet. Ved tilslutning af en H-bro, kan motorerne selvstændigt styre robotten, og der er derfor ikke brug for nogen drejemekanisme. For at robotten skal kunne navigere rundt i lokalet er det nødvendigt med sensorer til at opfange væggene. Hertil anvendes to analoge afstandssensorer, der er placeret på robottens front samt højre side. Afstandssensorerne der anvendes, Sharp GP2D12, kan opfange forhindringer såsom vægge i en afstand af cm, hvilket til dette system ses som tilstrækkeligt. 10

11 For at robotten kan køre rundt i et lokale med retvinklede hjørner, skal den kunne dreje præcis 90. Hertil kan der eksempelvis benyttes et såkaldt kompas, der får robotten til at dreje et antal grader i forhold til dets egen position. Men da det tilgængelige kompas nemt bliver påvirket af elektromagnetisk støj fra motorerne eller anden ekstern kilde, ses dette ikke som en pålidelig løsning. Derfor anvendes der i stedet to takometre der i sammenhæng med microcontrolleren fungerer som encodere, der herved benyttes til at aflæse de to baghjuls tilbagelagte distance. Dette gør det efterfølgende muligt at få robotten til at dreje 90, ved at lade robotten køre indtil de to hjul har tilbagelagt en distance der passer med en rotation på 90. Dette resulterer i et design af system som kan ses på Figur 1. Figur 1 Diagram over det komplette system til opfyldelse af kravspecifikationen. 11

12 8 MSP430 Denne del af rapporten omhandler MSP430F149, særligt de i projektet anvendte perifære enheder. Gennem rapporten vil disse enheder blive kaldt peripherals, som er deres engelske navn. 8.1 Introduktion [5] I projektet arbejdes der med en microcontroller fra Texas-instrument af typen MSP430F149, microcontrolleren er kendt for sin gode balance mellem strømforbrug kontra ydelse. MSP en forsynes med en spænding på mellem 1,8-3,6 V. Dette spændingsområde er også dens outputspænding. Microcontrolleren har 64 ben, hvor 48 af dem kan bruges som I/O ben (input/output), desuden kan de fleste I/O ben sættes til enten at være I/O ben eller til at være en peripheral enhed. De andre ben bruges til andre funktioner så som analog og digital forsyning, input og output til eksterne krystaloscillator og mere. Figur 2 viser MSP430F194 erens tilslutningsben. Figur 2: Microcontrollerens ben og dens tilslutningsmuligheder [2] 12

13 Microcontrolleren er bygget på Von Neumann arkitekturen, som er bygget op af: Hukommelse CPU - Central Processing Unit, bestående af Aritmetisk enhed Kontrolenhed Input Output Hukommelsen er det separate datalager, hvor informationer som computeren ikke arbejder med gemmes væk i. Den arbejder begge veje med CPU en ved hjælp af de to databus, Memory data bus (MDB) og Memory Adressing data bus (ADB). CPU en består af to dele, en aritmetisk enhed, der laver alle de matematiske beregninger, og en kontrol enhed der styrer adresserne i hukommelsen på de data der skal bruges eller gemmes. Figur 3 illustrerer princippet for en Von Neumann maskine. Figur 3: Det indre af en Von Neuman Maskine [6] 13

14 8.2 CPU Registre [1][7][8] En RISC CPU har indbygget højhastighedshukommelse kaldet registre, hvor der lagres værdier (bits) indtil de skal bruges. Ydermere har CPU en har en aritmetisk logisk enhed (ALU) der udfører beregninger på de lagrede værdier. Endelig er der i CPU en en kontrolenhed, der styrer alle microcontrollerens operationer. Blokdiagrammet over CPU ens registre er illustreret på Figur 4. Microcontrolleren MSP430F149 har 16 filregistre med plads til 16 bits hver. I MSP430F149 er der fire special purpose registre (R0-R3) til særlige funktioner og 12 general purpose registre (R4- R15) til lagring af bits. Her følger en beskrivelse af special purpose registrene. Figur 4 CPU blokdiagram. Her ses de 16 registre samt ALUen der kan give forskellige outputs. [1] 14

15 R0 Program Counter (PC) Dette register holder altid øje med den næste instruktion der skal udføres. Dvs. den instruktion der kommer efter den igangværende instruktion. R1 Stack Pointer (SP) I et tilfælde hvor CPU en har mere end én opgave den skal udføre, bruges Stack Pointeren. En CPU har en RAM-stack som den kan gemme igangværende instruktioner i. Her er vist et eksempel. 1: CPU en arbejder på en instruktion Opg. (1). 2: CPU en får en ny instruktion Opg. (2) ind, og sætter Opg. (1) over i stacken. 3: CPU en får endnu en ny instruktion Opg. (3) ind, og sætter Opg. (2) over i stacken. 4: CPU en er færdig med Opg. (3) og går tilbage til at arbejde på Opg. (2). Det ses her at instruktionerne hentes fra stacken på en sådan måde, at den instruktion der kom sidst ind kommer først ud. Dette kaldes LIFO. Figur 5 Eksempel på CPU-arbejde. Trinvis gennemgang er beskrevet ovenfor. 15

16 R2 Status Register (SR) Dette register bruges til flere ting, bl.a. til at markere beregninger i ALU en. I forbindelse med CPU ens beregninger bruges fire bits; Zero (Z), Carry (C), Overflow (V) og Negative (N) bits. Giver ALU en f.eks. et negativt resultat, bliver dette markeret af N-bitet hvilket kan indvirke på en forudbestemt måde i et stykke software. Herunder ses Status Registrets bits. Figur 6 Status Register bits [1] R2 og R3 - Constant Generatorer (CG1 og CG2) Constant Generatorerne CG1 i R2 og CG2 i R3 har seks af de mest almindelige konstanter lagret, således at de er let tilgængelige hvis de anvendes i et program. 16

17 8.3 Digital I/O [1] Den MSP430 der benyttes i projektet har seks I/O porte, P1-P6, hvor hver af disse har otte ben. Hver port har nogle registre der benyttes til at konfigurere de enkelte ben. De i alt 48 ben kan enten bruges som digital I/O, eller en peripheral der er forskellig fra ben til ben. Eksempelvis kan benene på port 6 bruges som analog-digital convertere, ADC. Registret der styrer dette, hedder PxSEL hvor x er den anvendte port. Hvis en bit er sat til 1, vil det tilhørende ben fungere som den peripheral der kan findes i databladet, hvorimod hvis biten er sat til 0, vil benet fungere som digital I/O. Afhængig af hvilken funktion der benyttes på et ben, vil der være forskellige registre til at konfigurere dette. Hvis et ben er sat til en speciel egenskab, vil funktionen og opsætningen af benet kunne bestemmes i nogle tilhørende registre. Hvis benet derimod er sat til digital I/O, altså PxSEL er sat til 0, findes der andre registre til at styre funktionen af benet. Tabel 1: Registre til digital I/O på P1 og P2. [1] Tabel 2: Registre til digital I/O på P3 til P6 [1] 17

18 Som det kan ses ud fra tabellerne ovenfor er portene P1 og P2 lidt anderledes, da de har interrupt egenskaber, hvilket portene P3-P6 ikke har. PxIN registret er et read only register, hvilket betyder at det kun er muligt at aflæse fra registret, hvorimod alle de andre registre også har mulighed for at blive ændret på, read/write register. PxIN reflekterer det signal der er på det efterspurgte ben, hvor 1 betyder at indgangen er høj, og 0 betyder at den er lav. Med PxOUT registret er det muligt at ændre et bens output ved at ændre den tilhørende bit, 1 for højt output og 0 for lavt output. PxDIR registret bruges til at bestemme om et ben skal være output eller input, 1 for output og 0 for input. Disse registre er ens for alle portene, men som nævnt tidligere har port 1 og 2 også interrupt egenskaber, og dermed også yderligere 3 registre til at kontrollere dette. PxIFG, også kaldet interrupt flag, bliver sat til 1 når et interrupt har fundet sted. Samtidig skal PxIFG sættes lav igen efter interruptet er udført, da programmet ellers ville blive hængende ude i interrupt koden. PxIES er til at bestemme om interrupt flaget skal sættes på dens nedadgående- eller opadgående flanke. For at interruptet kan fungere skal det dog også enables på det bestemte ben, dette gøres ved at sætte den tilhørende bit til høj i registret PxIE, der står for interrupt enable. Når PxIFG samt PxIE er sat vil interruptet altså blive udført. 8.4 Interrupt [9] Et interrupt er et asynkront signal fra hardware eller software der indikerer et behov for eksekveringstid, hvilket betyder at interrupts medfører asynkrone spring i kode eksekveringen, mens eksempelvis funtionskald medfører synkrone spring, bestemt af brugeren. Et interrupt vil altså på et hvilket som helst tidspunkt i kodeeksekveringen, være i stand til at bremse den nuværende eksekvering, og i stedet påbegynde eksekveringen i den kode der er tilsluttet interruptet. Herefter vil programcounteren igen går tilbage til det sted den befandt sig før interruptet. Dette er illustreret på Figur 7. 18

19 Figur 7: Viser hvorledes en interrupt service rutine, ISR, opfører sig [9] Ved flere interrupts på samme tid vil microcontrolleren selv prioritere interruptsne, og dernæst eksekvere dem i rækkefølgen bestemt af prioriteringen. MSP430, der benyttes i dette projekt, understøtter 3 forskellige slags interrupt, system reset, non-maskable og maskable: System reset bruges til nulstilling af systemet og kaldes automatisk ved systemopstart. Non-maskable interrupts aktiveres eksempelvis ved oscillator fejl eller ved forkert tilgang til flash-hukommelsen Maskable interrupts bliver aktiveret af eksterne enheder såsom timere, digital I/O, ADC, PWM, seriel osv. 19

20 8.5 PWM Pulsbreddemodulering, på engelsk pulse-width modulation (PWM), benyttes til at styre mængden af effekt der sendes til en enhed. Pulsbreddemodulering er et digitalt periodisk signal vis pulsbredde moduleres. Herved varieres det gennemsnitlige output for perioden. Variationen af outputtet er afhængig af signalets duty cycle, der kan skrives som: T D = T on periode Hvor er den del af perioden hvor signalet er højt og blot er hele perioden Gennemsnitsværdien for et pulsbreddemoduleret signal er givet ved formlen: 1 v = T T 0 v( t) dt Hvor er spændingen som funktion af tiden, der over én periode kan skrives som: v ( t) v = v H L,0 t D T, D T t T Herved bliver gennemsnitsværdien : v 1 T D T T vh dt + 0 D T = vldt = D T v H + T T ( 1 ) D v L = D v H + ( 1 D) v L Formlen ovenfor kan simplificeres endnu mere, da det ofte ved pulsbreddemodulerede signaler er således, at 0 og herved fås: v = D v H 20

21 Gennemsnitsværdien kan herefter benyttes til for eksempel at bestemme robottens motorkraft. Hvis PWM signalet er indstillet således at gennemsnitsspændingen bliver 50 % af den maksimale spænding, vil robotten samtidig kun køre med 50 % motorkraft. 8.6 Clock [1] MSP430F149 er udstyret med tre forskellige clockmoduler. Clockmodulerne bruges til at styre hvilken frekvens der skal bruges og hvordan clockfrekvensen skal genereres. Ved brug af tre forskellige clockmoduler, er det muligt for brugeren selv at bestemme den mest optimale balance mellem regnekraft og strømforbrug. De tre forskellige clockmoduler er følgende: LFXTCLK: Kan både bruges som lav- og højfrekvens oscillator XT2CLK: Bruges som højfrekvent oscillator ( MHz) DCOCLK: Bruges som en intern digitalstyret oscillator. (default ~725 KHz) XT2CLK er også det der kaldes en ekstern clock, da den ikke sidder på selve microcontrolleren. Clocken er et krystal der kan oscillere en frekvens på op til 8 MHz. DCOCLK er microcontrollerens interne clock. De tre clockmoduler bruges til at generere tre forskellige clocksignaler: ACLK (auxiliary clock), MCLK(master clock) og SMCLK (Sub-Main clock). ACLK kommer fra LFXT1CLK. MCLK og SMCLK er softwareafhængige, og ved brug af disse er det muligt at vælge hvilke clockmoduler der skal bruges. Der kan vælges imellem LFXT1CLK, XT2CLK eller DCOCLK. Disse clocksignaler kan alle divideres med 1,2,4 eller 8 for at mindske clockcyklussen. 21

22 8.7 ADC [1] MSP430F149 har en indbygget 12-bit ADC vis diagram kan ses på Figur 8. Microcontrolleren giver mulighed for selv at definere hvilket interval der skal måles i, hvilket kan gøres ved hjælp af den nedre og øvre grænse, hhv. V R- og V R+. De udgør et område der bliver opdelt i 4095 intervaller. Den nedre grænse kan stilles til GND eller til en ekstern kilde. Den øvre grænse kan defineres gennem microcontrolleren til at være 1.5V-, 2.5V-, 3.3V forsyningsspænding eller til at komme fra en ekstern spændingsreference. Figur 8: Diagram over ADC12 [1] 22

23 V R+ defineres med de to bits SREF1 og SREF0 og via disse to bits kan det defineres om V R+ skal komme fra den indbyggede spændingsregulator. Mens V R- kan defineres via SREF2 som sættes til enten GND eller en ekstern reference. INCHx-blokken er en 4-bit multiplexer som bestemmer hvilken port ADC en skal sample på. De første otte eksterne indgange på microcontrolleren sidder på pins og 2-6. Alt dette gemmes i ADC12MCTLx-registret og når konverteringen er færdig bliver det gemt i hukommelsesregistret ADC12MEMx. Det er en 16-bit register og resultatet er på 12-bit. Når alt dette gemmes i MCTLx er konverteringen færdig og det bliver tilsvarende gemt i ADC12MEMxregistret hvor x er konfigurations- og hukommelseselementet. Der er i alt 16 elementer. ADC12 modulet bruger følgende formel til resultaterne hvor det digitale output N ADC bliver: V N ADC = 4095 V in R+ V V De kontrolregistre der skal bruges til at styre konverteringen er ADC12CTL0, ADC12CTL1 og ADC12MCTLx. ADC12 Kontrolregistre ADC12CTL0 ADC12CTL0 og ADC12CTL1 er kontrolregistre, der bestemmer hvorledes konverteringen skal ske. R R Figur 9: ADC12CTL0 kontrolregistret [1] 23

24 I dette projekt anvendes funktionerne: SHTOx, ADC12ON, og ENC. Disse vil nu blive beskrevet. SHT0x: Sample-and-hold time. Disse bits definerer antallet af perioder på ADC12CLK i sampleperioden for registrene ADC12MEM0 til og med ADC12MEM7. SHTx bits ADC12CLK cyklus Tabel 3 ADC12CLK cyklus for SHT0x og SHT1x ADC12ON. ADC12ON er funktioner for tænd/sluk 0 ADC12 slået fra 1 ADC12 slået til ENC: Enable Conversion. 0 ADC12 slået fra 1 ADC12 slået til 24

25 ADC12 Kontrolregistre ADC12CTL1 Figur 10 ADC12CTL1 kontrol registret [1] I dette registrer bruges funktionerne SHP og CPMSEQ_3. SHP: Sample-and-hold pulse mode. Denne bit bestemmer om sample-and-hold signalet skal køre direkte til 12 bit SAR eller om den skal have bestemt puls bit SAR anvendes. 1 anvend bestemt puls. CPMSEQx: bestemmer hvilken rækkefølge konverteringen skal ske i Værdi af CPMSEQx bits betydning 00 Enkelt kanal, enkelt konvertering 01 Forløb af kanaler 10 Gentagende enkelte kanaler 11 Gentagende forløb af enkelte kanaler Tabel 4: AdC12CTL1 for CPMSEQx Memory Kontrolregistre ADC12MCLx Der findes 16 memory kontrolregistre. Resultatet af konverteringen af de 12 bit gemmes i hvert sit register. Siden ADC12 er en 12 bit konvertering, vil de sidste fire bit (bit 12-15) altid være nul. 25

26 Figur 11 ADC12MCTLx memory kontrol registret [1] INCHx: Input Channel Select. Disse bits bestemmer hvilke indgange der benyttes til ADC12 modulet. Tabel 5 viser bit-kombinationerne. input Betydning 0000 A A A A A A A A VeREF VREF_/VeREF_ 1010 Temperature diode 1011 (AVcc Avss)/ (AVcc Avss)/ (AVcc Avss)/ (AVcc Avss)/ (AVcc Avss)/2 Tabel 5: Valg af indgangsben 26

27 8.8 Timere [10] Der er tre timere i den MSP der benyttes i projektet. Watchdog timer Timer A Timer B Watchdog timeren, WDT, bruges hovedsagligt til at genstarte systemet ved eventuelle systemfejl. Watchdog timerens funktion er at efterspørge et signal fra microcontrolleren om, hvorvidt den stadig fungerer som den skal, hvis watchdog timeren ikke får dette signal indenfor et vist tidsinterval vil watchdog timeren gå ind og genstarte systemet automatisk. Derfor er det nødvendigt at opsætte softwaren til microcontrolleren således at den regelmæssigt sender et signal ind til watchdog timerens kontrolregister, også kaldet WDTCTL. Timer A er en synkron 16-bit timer/counter der her kan benyttes til for eksempel at generere et PWM-signal, og det samme er gældende for Timer B. 8.9 Seriel kommunikation (USART/UART) [11, ] Til seriel kommunikation mellem hardware og MSP430 anvendes microcontrollerens USART peripheral i UART tilstand. Standarden for de serielle kabler der anvendes til kommunikationen hedder RS232. UTX-benet og URX-benet på MSP430 er forbundet til et USB-seriel UART interface, således at MSP430 kan sættes til en PC med et USB-kabel. Asynkron seriel kommunikation foregår ved at der sendes logiske 1ere og 0ere mellem enheder. Ved brug af UART sendes der bits på følgende måde: Først sendes et lavt 0 start bit for at markere begyndelsen. Derefter sendes databitene, eller ordet, med LSB først. Så sendes et valgfrit paritetsbit der undersøger for fejl. Til sidst sendes et 1 stop bit for at markere slutningen af ordet. Et eksempel er vist på Figur

28 Figur 12 Eksempel på seriel datatransmission. Se teksten herunder om hastighed for forklaring [12] Hastigheden hvormed bits sendes mellem to enheder kaldes baud rate. Hastighed mellem start bit og stop bit kaldes timerperioden. Tages Figur 12 som eksempel, ses det at der kræves 11 bits for at sende en character. Hvis det antages at der sendes 10 characters per sekund, så sendes der i alt 110 bits/sekund. Baud raten vil her være 110 bits/sekund. [13, ] Baud rates ligger mellem bits/sekund. Denne værdi skal beregnes på baggrund af en clockfrekvens. Se evt. Afsnit 8.6 for flere detaljer om clock i MSP430. Ved asynkron seriel kommunikation sendes data mellem enheder efter lokale clocks, dvs. hver enhed har sin egen clock at styre efter. En start bit signalerer til den clock hos modtagerenheden at der skal sendes en bit-række til den, og at modtageren skal være klar til at modtage. Et stop bit signalerer bit-rækkens slutning. Clocks er designet til at sende og/eller modtage med 16, 32 elle 64 gange baud rate. Et eksempel på udregning af perioden mellem afsending og modtagelse er vist herunder. [11,699] N = BRCLK baud rate 153,6 KHz = 9600 baud 16 N er bitperioden, BRCLK er en kendt krystalfrekvens og baud raten er som sagt antal bits der sendes. Baud rate må ikke forveksles med hvor mange data bits der overføres pr. sekund. I eksemplet På Figur 12 overføres der 80 data bits pr. sekund, hvilket 28

29 ikke er det samme som baud raten. Baud raten i eksemplet ovenfor er 110 bits pr. sekund. USART registre Følgende afsnit er en oversigt over relevante bit-registre i USART0 der er anvendt til seriel kommunikation. Figur 13 viser USART kontrolregistret med otte bits. Figur 13 UxCTL USART Kontrol Registre [1] Af disse bits anvendes 7, 5 og 2 i projektet og er derfor af interesse: PENA: Parity Enable. Denne bit bestemmer om paritetskontrol er slået til eller fra. 0 kontrolbit slået fra 1 kontrolbit slået til SPB: Stop bit select. Denne bits tilstand bestemmer om der er et eller to stop bits efter en række bits. Receiverdelen af dette register checker altid for et stop bit, uanset indstillingen her. 0 et stop bit. 1 to stop bits. SYNC: Synchronous mode enable. Denne bit bestemmer tilstanden for seriel kommunikation. 0 UART-tilstand 1 SPI-tilstand Figur 14 viser USART Transmit kontrolregistret, også med otte bits. Figur 14: UxTCTL, USART Transmit Control Register [1] 29

30 Her anvendes bits 4 og 5: SSELx: Source Select. Disse bits vælger hvilken baud rate clock der anvendes i baud rate generatoren. 00 UCLKI 01 ACLK 10 SMCLK 11 SMCLK Figur 15 viser Module Enable Register 1 Figur 15 ME1, Module Enable Register 1 [1] Dette register har to bits af interesse, 6 og 7. UTXE0 + : USART0 transmit enable. Denne bit bruges til at slå transmit modulet til eller fra. 0 modulet er slået fra 1 modulet er slået til URXE0 + : USART0 receive enable. Denne bit bruges til at slå receive modulet til eller fra. 0 modulet er slået fra 1 modulet er slået til 30

31 9 Implementering Denne del af rapporten omhandler implementering af hard- og software, dvs. hvorledes disse er anvendt til at opbygge en autonom robot. Et detaljeret blokdiagram for robotten kan ses i Bilag Dimensionering af robotten Robotten er bygget op af LEGO med en længde på 30 cm og en bredde på 33 cm. Robotten har fire hjul, hvor to motorer driver baghjulene. På robottens forhjul er der påsat klisterbånd, da dette nedsætter friktionen og derved gør det lette for robotten til at dreje. Hjulene der er anvendt til robotten har en diameter på 6.3 cm og en omkreds på 19.8 cm. Dette finder anvendelse til motorstyringen, hvis software er beskrevet i Afsnit Figur 16 LEGO hjul anvendt til robot Forrest på robotten sidder to sensorer der får robotten til at styre udenom forhindringer. Der sidder en sensor foran og en sensro på højre side. To takometre der i sammenhænge med microcontrolleren fungerer som encodere er sat på robotten ved siden af motorerne således at de kan tælle tilbagelagt distance. 31

32 Robotten er konstrueret således at den også kan bære det relativt tunge batteri, der vejer 1,3 kg.. Figur 17 og Figur 18 er billeder af robotten. Figuren af robotten er vejledende, da målestoksforholdet ikke passer med den egentlige robot. Figur 17 Robotten set fra oven Figur 18 Robotten set fra højre side 32

33 9.2 Hardwareopbygning De følgende afsnit giver en beskrivelse af den hardware der er blevet anvendt for at bygge det fysiske system. For flere tekniske detaljer om komponenterne henvises der til databladene i bilagene og databladene på den vedlagte CD Takometer Distanceaflæsning af robotten bruges til at kunne aflæse hvor langt robotten har kørt. Til distanceaflæsning er der anvendt to hulskiver fra en Microsoft Intelli Mouse og to optiske sensorer med fototransistor output, disse er af typen TCUT1200. De to optiske sensorer indeholder begge en infrarød diode og to fototransistorer. De to hulskiver er monteret direkte på de to bagerste hjul, og kan dermed måle den tilbagelagte distance vha. microcontrolleren. Figur 19: Tv. ses hvordan den optiske sensor er tilkoblet hulhjulet [14]. Th. ses kredsløbdiagrammet for takometret Det fungerer ved at en infrarød lysdiode udsender infrarødt lys ud på hulskiven, når lyset rammer igennem hullet i hulskiven, sendes lyset videre til en fototransistor, fototransistoren detekterer lyset og åbner for 5v forsyningen og sender den videre til Schmitt Triggeren, signalet til Schmitt Triggeren inverteres, så hvis Schmitt Triggeren modtager et logisk 1, sender den et logisk 0 ud til MSP en. Hulskiven har 18 huller og koblet til hjulet med en 1 til 1 gearing, det vil sige når hjulet har drejet en omgang, fås der 18 pulser. Disse sendes ind til 33

34 microcontrolleren, der kan udregne den tilbagelagte distance for hjulet, når robotten skal rotere Motorstyring Robottens to motorer er 9 volts DC LEGO-motorer af typen Motoren består af forskellige komponenter. En magnet sætter motoren i gang når der føres spænding over den. Positiv spænding får motoren til at køre frem, mens negativ spænding vender polariteten og får motoren til at køre baglæns. [11, ] Den anvendte IC til motorstyring hedder L298. Den kaldes også H-bro, da kredsløbet har form som et stort H. En H-bro kan styre én motor der kan køre både frem og tilbage. L298 har to H-broer, således at den kan styre to motorer. Se evt. diagrammet i siderne fra databladet der er vedlagt som Bilag 6. Figur 20 er en del af blokdiagrammet over det kredsløb der er opbygget til robotten. En tegning af hele kredsløbet er vedlagt som Bilag 1. Tabel 6 er en sandhedstabel for inputtene A og B i bufferne 1 og 2 i L298. Tabellen viser hvad der sker i H-broen, når inputtene er høje og lave. En tilsvarende tabel for inputtene C og D i bufferne 3 og 4 er siderne fra databladet der kan ses i Bilag 6. 34

35 Figur 20 Kredsløbsdiagram over H-bro Input Input Funktion A=H; B=L Fremad V en =H A=L; B=H Bagud A=B Brems V en =L A=X; B=X Friløb Tabel 6 Sandhedstabel for H-bro (Inputs A og B) Der er sat dioder ind i kredsløbet for at beskytte det. Hvis dioderne ikke var i kredsløbet, kunne andre komponenter tage skade af den flyback voltage der opstår når motorerne sættes til at stoppe. Derudover er der to kondensatorer i kredsløbet. Disse har til formål at skabe forsinkelse og forhindre at begge udgange 1 og 2 er høje på samme tid. Det ses i sandhedstabellen at motoren stopper, når A=B. 35

36 9.2.3 Afstandssensor [15] En af de ting robotten skal kunne er at navigere rundt i et rum, og den skal kunne måle afstand for ikke at køre ind i væggene. Til afstandsmålingen anvendes to sensorer på fronten og højre side af robotten. Disse sensorer er infrarøde analoge afstandsmålere af typen Sharp GP2D12. De har den egenskab, at de kan opfange objekter uden nogen indflydelse fra hvilken farve det reflekterende objekt har. Figur 21 viser et blokdiagram over GP2D12 sensoren. Figur 21 Blokdiagram for SHARP sensor [13] Ifølge sensorens datablad kan GP2D12 måle objekter indenfor en afstand af 10cm til 80cm og giver et spændingsfald i intervallet mellem 0.4V og 2.6V. Databladet kan ses i Bilag 7. Figur 22 er en graf fra databladet, der viser hvordan karakteristikken for GP2D12 er. 36

37 Figur 22 Databladets karakteristik for SHARP sensor, som viser spænding pr. cm [15] Afstandsmåleren GP2D12 er en færdigbygget enhed, der er forbundet til microcontrollerens ADC som er beskrevet i afsnit 8.7. GP2D12 har 3 pins: en GND, Vcc og Vo. Hvor Vo outputsignalet er forbundet direkte på microcontrollerens ADC på port 6.0, der svarer til pin 59. Se Figur 23. Ligeledes er en anden sensor sat til microcontrollerens port 6.1, pin 60. Figur 23 Forbindelsen mellem GP2D12 og MSP en 37

38 9.3 Beregningshastigheder For at kunne bruge de forskellige elementer til projektet, som takometre og microcontrolleren, er det nødvendigt at se om enhederne er hurtige nok til at følge med, når robotten kører, og se om en eventuelt tophastighed på robotten skal justeres ned. Dette gennemgås i følgende afsnit Takometer For at kunne bestemme den maksimale hastighed robotten må køre, er det nødvendigt at kigge på de forskellige komponenter som elektronikken indeholder. Takometret indeholder tre komponenter der kan begrænse hastigheden på robotten: optisk sensor, Schmitt Trigger og buffer. Den optiske sensor med fototransistor output er af typen TCUT1200. Ifølge databladet har sensoren et maksimalt propagation delay på 150 µ s. Databladet kan ses i Bilag 4. Schmitt Triggeren er af typen MC74HCT14A. denne komponent har i værste fald et propagation delay på 32ns. Databladet for Schmitt Triggeren kan ses i Bilag 5. Bufferen er af typen 74HCT541N og har et propagation delay på 12 ns. Databladet ligger på vedlagte CD. Ud fra betragtningerne af komponenterne, fremkommer det at den optiske sensor med fototransistoroutput, er den langsomste enhed. Deraf kan det udregnes hvor mange pulser i sekundet den kan klare. Hulhjulet der er tilkoblet takometeret, er på 18 huller, og derfor kan den maksimale rotation pr. hjul skrives: 1 = 150µs hjulets rotation 18 c hjulets rotation = 370,37 Det fremkommer af resultatet, at den maksimale rotation/sekund for takometeret er 370 omdrejninger pr. sekund. Den maksimale hastighed for robotten kan nu udregnes 38

39 3600[ s] tophastighed = 370[ rps] omkredsen af hjulet 1000[ m] c 19,8[ cm] 3600[ s] tophastighed = 370[ rps] [ m] c tophastighed = 263,7[ km / t] Ud fra resultatet er der fundet frem til, at elektronikken kan håndtere robotten med en tophastighed på op til 263,7 km/t. Det kan ses af resultatet og konkluderes, at hardwaren ikke er nogen begrænsning for robotten MSP For at kunne undersøge om MSP430F149 kan følge med til at trække de interrupts der kommer fra takometrene, er det nødvendigt at kigge nærmere på MSP en. Der er tilsluttet to takometre, og hvert takometer giver 18 inputs pr. omgang. Dette betyder at MSP en modtager 2 18inputs for hver gang hjulene på robotten har kørt en omgang. I projektet bruges DCOCLK til at foretage disse beregninger. Denne kører med en clockcyklus, som er målt til at være på 767 khz, hvilket betyder at den kan foretage instruktioner pr. sekund. Dette betyder at en instruktion tager = 1,3µs I MSP430x1xx Family User s Guide kan det læses, at et interrupt bruger fem clockcyklusser foruden interruptkoden. Desuden er robotten målt til en topfart på 1 km/t, dette er lig med 0.28 m/s. Hermed kan det udregnes hvor mange interrupts den får pr. sekund: tophastighed = hjulets omdrejninger pr. sekund hjulets omkreds c 0,28 0,197 = 1,42rps 39

40 Hjulets omdrejninger pr. sekund 18 huller = interrupt pr. sekund interrupts 1,42 18 = 25,56 sekund Da der haves 2 takometre, ganges dette med 2 interrupts 25,56 2 = 51,12 sekund Desuden er det nødvendigt at vide hvor mange instruktioner pr. sek. programmet tager. Dette findes ved at se på krydskompileringen til assembler: Figur 24: Viser de otte assembler instruktioner c-koden foretager. Koden tager otte assembler instruktioner pr. takometer for hver gang den tæller en op, dvs. den tager 16 instruktioner i alt og hvert interrupt tager fem instruktioner. Herved får vi i alt en maksimal belastning på 26 instruktioner. Ud fra det ovenstående kan den samlede belastning af MSP en for takometrene beregnes: interrupt 1 51,12 26instruktioner 100% = 0,173% sekund Ergo kan det ud fra ovenstående konkluderes at MSP en bruger maksimalt 0,173 % af dens kapacitet på at beregne inputs fra de to takometre, hvilket betyder at MSP en kan håndtere alle inputs fra takometrene. 40

41 9.4 Softwareopbygning I dette afsnit vil robottens software opbygning blive beskrevet. Der vil blive set på programkoden i de funktioner der anvendes, hvorfor de anvendes og hvordan de initialiseres. Til at give et overblik på hvordan programkoden skal fungere er der lavet flowcharts. Hoveddelen af programmeringen er i sproget C, med en undtagelse af terminalprogrammet, som er i C# Programmets opbygning Robottens program består af en stor main() funktion der kalder andre delfunktioner så som PWM, motor og seriel kommunikation. Selve main programmet indeholder tre hoveddele: - Første del kalder de initierende funktioner - Anden del der styrer manuel kørsel - Tredje del der styrer den autonome styring Det flowchart der er opstillet for hele funktionen er vedlagt som Bilag 3. Figur 25 Programkode for første del af main 41

42 Manuel kørsel I manuel tilstand skal robotten kunne styres efter behov. Inden selve softwaren blev lavet er der tegnet et flowchart over hvordan robotten skal køre. Flowchartet er vist på Figur 26. Figur 26 Flowchart for manuel styring Robotten er i manuel styring så længe autorun er slået fra. Derefter kan den styres gennem en terminal. Robotten kan så, ud fra de data som den modtager, bestemme hvilken retning den skal køre i, hvis den f.eks. drejer til højre vil den forblive med det, indtil den afbrydes af en anden instruktion. Hvor hurtig den kører er fastsat via PWM, hvilket i dette tilfælde er 75 %. Den vil forblive i manuel tilstand indtil den har modtaget et A fra terminal programmet, derefter slår den over til autorun eller autonom kørsel som det også hedder. 42

43 Main koden for den manuelle styring ses her på Figur 27. Figur 27 Programkode for manuel styring 43

44 Autonom kørsel Udover manuel styring skal robotten også kunne køre autonomt. Dette gøres ved hjælp af nogle funktioner. Idéen i dette går ud på at robotten skal finde en væg, og derefter reagere på forskellige måder med hensyn til hvilken af sensorerne der har registeret væggen. Der er opstillet et flowchart over de forskellige situationer der kan forekomme, og hvordan den vil reagere på dem. Figur 28 viser flowchartet. Begin STOP If it receive M True Enable Manuel Mode False Forward False Front Sensor True Turn Left True Right Sensor False Turn Right Figur 28 Flowchart for autonom kørsel Som det kan ses ud fra det opstillede flowchart vil robotten undersøge om den har modtaget et M. Hvis dette er tilfældet slår den over på manuel kørsel og her vil den blive indtil den har modtaget et A. Hvis den derimod ikke modtager et M kører robotten fremad indtil den møder en væg, hvorefter den drejer 90 til højre. Herefter kører robotten softwaremæssigt tilbage i løkken og ser endnu engang efter om den modtager et M. Hvis dette ikke er tilfældet fortsætter den lige ud, og hvis der denne gang er vægge både foran og til højre for robotten, så vil 44

45 den dreje 90 til venstre. Den vil så forsætte i denne rutine indtil den har modtaget et M. Selve main programmet for den autonome styring kan ses på Figur 29: Figur 29 Programkode for autonom kørsel Programkoden viser at, når autorun == 1 så er autonom kørsel slået til. Manuel kontrol bliver enabled når autorun == 0 hvilket svaret til at UORXBUF modtager et M. PWM_signal (3072,3072); svarer til at motorerne kører med 75 % duty cycle, hvilket genererer en hastighed på 75 % af dens maksimale hastighed. ADC12MEM0 < 0x400; gør, at hvis der ikke er en væg foran robotten indenfor 40cm vil funktionen Motorstyring(2,2); og PWM_signal (3072,3072) få robotten til at køre lige ud. 45

46 Hvis sætningen ADC12MEM0 == 0x400 er sand, undersøger den herefter om der er en væg indenfor 40cm til højre for robotten vha. sætningen ADC12MEM1 > 0x26c. Hvis der er en væg, så drejer den 90 til venstre vha. funktionen rotate_90_left(); Hvis der derimod ikke er en væg til højre for robotten inden for 40cm, drejer den 90 til højre vha. rotate_90_right(); Hvis robotten i et tilfælde drejer mere end beregnet og kommer skævt ind på væggen vil programkoden ikke korrigere for det, men den vil fortsætte sin skæve kørsel til et punkt hvor sensorerne ikke registrerer væggen og dermed vil den køre ind i væggen. I så fald er det dog muligt a stoppe robotten vha. terminalprogrammet Motorstyring Til at styre robotten er det nødvendigt med en motorstyring, da robotten i projektet kun kan dreje ved hjælp af en differens mellem de to motorer. Motorstyringen består af et stykke software der i sammenhæng med den anvendte H-bro kan styre de to motorers retning. Softwaren til motorstyringen bruges til at sætte H-broens 4 indgange (2 per motor) høje eller lave, alt efter hvilken retning robotten skal køre i. Til dette skal microcontrolleren først initialiseres, hvilket funktionen Motor_Init gør, herefter kan den generelle motorstyring anvendes, samt de to funktioner Rotate_90_left og Rotate_90_right. På Figur 30 ses et flowchart for hvordan selve motorstyrings funktionen er opbygget: 46

47 Figur 30: Flowchart for funktionen Motorstyring(int, int) Som nævnt ovenfor skal microcontrolleren dog først initialiseres inden selve motorstyringen kan fungere. Dette gøres ved nedenstående kode af funktionen Motor_Init: Figur 31: Programkoden for funktionen Motor_Init() Da motorstyringen blot består i at sætte nogle ben høj/lav, er initialiseringen deraf også simpel. Som det kan ses ud fra koden er det blot en opsætning af P1.4/5/6/7 som output samt I/O. Herefter kan robottens retning styres, ved hjælp af funktionen motorstyring. Herunder er et lille uddrag af koden fra motorstyringen. 47

48 Figur 32: Lille del af programkoden for funktionen Motorstyring(int, int) Som det kan ses ud fra koden bliver de enkelte ben blot sat høje eller lave, alt efter hvilken retning robotten skal køre i. Hvis robotten for eksempel skal køre bagud, bliver benene ligeledes sat således at de igennem H-broen får begge motorer til at køre bagud. Hvis robotten derimod skal dreje til højre, vil venstre motor blive sat til at motorbremse, imens højre motor sættes til at køre bagud. For at robotten kan opfylde kravet om at kunne køre rundt i et retvinklet rum, er det også nødvendigt med en funktion der får robotten til at dreje 90 til både højre og venstre. Hertil benyttes motorstyringsfunktionen i sammenhæng med de encodere der sidder på robotten. 48

49 Figur 33: Flowchart for funktionen rotate_90_left() Som det kan ses ud fra flowchartet vil en variabel kaldet right_encoder blive undersøgt, og imens denne er mindre eller lig med variablen left_encoder + 32 vil robotten dreje til venstre ved hjælp af motorstyringsfunktionen. Når right_encoder er større end left_encoder + 32 vil den stoppe. For at få robotten til at dreje præcis 90 benyttes de to encodere til at aflæse hvor meget robotten har drejet. Antallet af interrupts, fra encoderne, der skal til for at robotten har drejet 90 kan beregnes ud fra robottens akselafstand samt dets hjuls omkreds. Ved rotate_90_left er den venstre motor bremset, imens den højre motor kører fremad. Derfor kan afstanden som det højre hjul skal køre beregnes med formlen: 22 2 π = 34,56cm 4 Hvor de 22 er robottens akselafstand. De encodere der anvendes laver 18 interrupts på en omgang, derfor kan antallet af interrupts for 90, når hjulets omkreds er 6,3 cm, skrives som: 34, ( 6,3 π ) = 31,43 interrupts Dette tal gør at robotten ikke vil komme til at dreje præcis 90, da funktionen kun kan regne med hele tal, og der derfor vil være en fejlmargen på cirka +-0,5 49

50 interrupts, eller cirka 1,5. For at mindske denne difference kunne akselafstanden på robotten ændres, men da fejlen ikke er større ses dette ikke nødsaget. Selve koden for funktionen kan ses herunder på Figur 34: Figur 34: Programkoden for funktionen rotate_90_left() Heraf ses det at funktionen for rotate_90_left skrives som en while løkke der kører indtil right_encoder er 32 højere end left_encoder, og robotten har drejet cirka 90. I denne løkke sættes robotten til at dreje til venstre med et PWM signal på 75 %, da periodelængden er Til sidst vil den ved hjælp af motorstyringsfunktionen stoppe robotten. Det samme vil gøre sig gældende for rotate_90_right hvor det bare er den venstre encoder der tælles på i stedet Encoder For at kunne kontrollere de to asynkrone signaler som takometrene kommer med, skal der bruges maskable interrupts, som er en indbygget funktion microcontrolleren har. Denne funktion aktiveres ved at skrive _BIS_SR(GIE). De eneste to porte der understøtter interrupts på MSP430F149 er port 1 og port 2. Desuden skal der bruges en interrupt service rutine der hele tiden tjekker for interrupts, til dette har microcontrolleren en funktion der hedder PORT2_VECTOR. På figur 35 ses et flowchart for den program-fil der anvendes til at styre encoderne på MSP en: 50

51 Start PORT2_VECTOR P2IFG=01 Yes Yes No P2IFG=02 left_encoder++ right_encoder++ No Figur 35: Viser flowchart diagram over encoder. Den første funktion er PORT2_VECTOR, i denne funktion tjekker den først om ben et er højt på P2IFG, hvis den er høj, adderes der en til variablen left_encoder, herefter går den ned og tjekker ben to på P2IFG, hvis denne er høj adderes der også en på variablen right_encoder og sådan bliver den ved, ud fra dette flowchart er programkoden skrevet. Figur 36: Programkode for Encoder_Init() 51

52 Først vil programkoden for initialiseringen af koden for encoderen gennemgås. Her sættes maskable interrupts til at være aktiveret. Derefter sættes P2.0 og P2.1 til at være input porte. Herefter sættes port 2.0 og port 2.1 til at være I/O ben. Dernæst cleares interruptflag. Den sidste linie aktiverer interrupt på P2.0 og P2.1. Efter alt initialiseringen for encoderne er PORT2_VECTOR koden skrevet. Denne ser således ud: Figur 37: Viser PORT2_VECTOR funktionen #Pragma er nogle direktiver der fortæller hvordan microcontrolleren skal behandle forskellige funktioner. I dette tilfælde skal den behandle funktionen som en interrupt vektor rutine, og denne er så lig med PORT2_VECTOR. Herefter defineres interrupt funktionen EncoderHit. Inde i denne funktion er der to if-sætninger. Den ene sætning gør at når det første bit på port 2 er højt, adderes der én på variablen left_encoder. Den anden gør at når det andet bit på port 2 er højt, så adderes der en på variablen right_encoder, som tidligere beskrevet under flowchartet for encoderen. 52

53 9.4.4 PWM For at kunne kontrollere robottens hastighed, anvendes timer A til at generere et PWM signal. Microcontrolleren har nogle ben der specifikt kan benyttes til dette, da de har tilhørende PWM-registre. For at kunne opsætte microcontrolleren til at generere dette PWM-signal er det nødvendigt med en program-fil, der både initialiserer microcontrolleren til at anvende PWM, samt til senere hen at kunne variere robottens hastighed efter behov. Til dette anvendes funktionerne PWM_Init og PWM_Signal. Den første funktion, PWM_Init() er, som dets navn hentyder, en initialisering af microcontrolleren til at generere et PWM-signal. Figur 38: Program-koden for funktionen PWM_Init() Som det kan ses ud fra koden, bliver microcontrollerens ben, P1.2 og P1.3, sat til output. Grunden til dette er at de, udover at fungere som almindelig digital I/O ben, også kan anvendes som Timer A ben. Herefter bliver periodelængden på PWM-signalet defineret ved at skrive til microcontrollerens timer A register CCR0. Dernæst bliver Timer A s capture/compare kontrol register for TA1/2 sat, samt resat med kommandoen OUTMOD_7. Den sidste kommando vælger submasterclocken til at styre Timer A, samt sætter timeren til at køre i up mode, hvilket vil sige at den tæller op til og med værdien for CCR0, i dette tilfælde Efter microcontrolleren er initialiseret kan robottens hastighed ændres ved hjælp af funktionen PWM_Signal. 53

54 Figur 39: Program-koden for funktionen PWM_Signal(int, int) Funktionen har den simple egenskab at kunne ændre de to udganges T on, og herved regulere robottens hastighed. Registrene CCR1 og CCR2 sættes i programmets main til 3072, hvilket er tre fjerdedele af PWM signalets periode som blev defineret i funktionen PWM_Init. Dette vil få robotten til køre med en hastighed på 75 % af dens maksimale hastighed Sensor [1] Der er monteret to analoge afstandssensorer på fronten og højre side af robotten. Ved hjælp af microcontrollerens 12 bit ADC, konverteres signalerne fra afstandssensorerne til digitale signaler. Figur 40: Program-koden for funktionen Sensor_Init Initialiseringskoden til afstandsmåleren starter med at tænde og opsætte P6.0/1 til ADC. Når ADC en er startet laver den gentagende konverteringer. Først sættes kontrolregisteret ADC12CTL0 til at være lig med sampletilstanden SHT0_2 som bestemmer antallet af perioder. For at få en automatisk konvertering som sker hurtigst muligt benyttes multiple sample konvertering (MSC). 54

55 Kontrolregistret ADC12CTL1 sættes til at være lig med SHP og CPMSEQ_3 som bestemmer samplings- og konverteringsrækkefølgen. I dette tilfælde vil den gentage konverteringer af en række kanaler. Memory kontrolregisteret ADCMCTL0 og ADCMCTL1 sættes henholdsvis til INCH_0 og INCH_1, disse funktioner bestemmer hvilke indgange der skal benyttes(a0 og A1). Kontrolregisteret ADC12CT0 bliver OR et med ENC hvilket aktiverer konverteringen. Pin 6.0 og 6.1 vælges til at være de ben der bruges til opsætning af ADC en Serial Til kommunikation mellem PC og microcontroller er microcontrollerens USART peripheral blevet anvendt. Specifikt er USART0 registrene blevet anvendt. Dette program styrer den serielle kommunikation ved at definere baud rate, indstille USART enheden og sende data til PC gennem pin 3.4. Følgende kode er til initialiseringen af seriel kommunikation mellem MSP430 og PC. Figur 41 Program-kode for funktionen Serial_Init() U0BR0 og U0BR1 er baud rate control registre. Disse bestemmer selv sagt baud raten. I programmet kan det ses at U0CTL registret er sat til 0x50 i hextal. Dette sætter U0CTL registrets bits til logiske 1ere og 0ere. Dette gør bl.a. følgende: 55

56 PENA bit er sat til 0, dvs. at check af paritetsbit er slået fra. CHAR bit er sat til 1, dvs. at character-længden er 8 bits. SYNC bit er sat til 0, dvs. at USART interfacet er sat til UART tilstand. Dette gøres for at kunne sende data til det RS232 interface der anvendes. I programmet ses det endvidere at U0TCTL registre er sat til 0x30 i hextal. Dette vælger baud rate source clocken til at være SMCLK. Registret U0MCTL er sat til 0x00 i hextal. Dette deaktiverer modulationen for BRCLK, der ellers mindsker baud rate fejlen. Kommandoen ME1 = 0xC0; åbner for USART transmit/receive således at der kan sendes fra microcontrollerens USART peripheral. Til projektets robot er microcontrollerens transmit porten ikke blevet anvendt til den serielle kommunikation. Dette program er en standardopsætning hvor både URXE0 og UTXE0 er slået til, men som sagt anvendes sidstnævnte ikke her. Kommandoen P3SEL = 0x30; sætter pin 4.5 og pin 3.5 på microcontrolleren til at fungere som hhv. transmit og receive til seriel-usb interfacet der sidder mellem PC og microcontroller. Kommandoen P3DIR = 0x10; sætter pin 3.4 til at være output Terminal For at kunne kommunikere med robotten, er der blevet udarbejdet et terminalprogram. Denne terminal, der består af en Windows applikation med tilhørende brugergrænseflade, gør brugeren i stand til at styre robotten, samt skifte fra manuel- til autonom styring. Terminalen er bevidst holdt simpel, da dens formål i dette projekt blot er at fungere som en styreenhed til robotten, ved opstart og eventuelle fejl i dens autonome kørsel. Terminalen er opbygget således at den, efter et input fra brugeren, sender et signal til robotten via en seriel forbindelse. Dette gøres meget simpelt ved først at åbne for den serielle port, for dernæst at kunne skrive til den, og til sidst lukkes der igen for den serielle port, da det ellers ikke vil være muligt for 56

57 terminalen senere hen at kommunikere med robotten. På figur 42 herunder ses funktionen for fremad knappen på terminalen: Figur 42: programkoden for fremad-knappen Som det også kan ses ud fra koden bliver den serielle port åbnet, hvorefter der skrives et F for derefter at lukke denne serielle port igen. Microcontrolleren vil så, alt efter hvilket bogstav den modtager fra terminalen, reagere derpå. Samtlige funktioner i terminalen er opbygget ligeledes, blot med et andet bogstav. Terminalens brugergrænseflade kan ses herunder: Figur 43 Terminalens brugergrænseflade 57

Automatiseret katapult

Automatiseret katapult Automatiseret katapult Kian Soleiman Casper Lindholt Andersen Rune Lauritzen Jesper Dalsgaard Mikkel Krautz DE3-1-E08 2. september 17. december 2008 Det Teknisk-Naturvidenskabelige Fakultet Aalborg Universitet

Læs mere

AVR MP3 29-05-08 05576 Ingeniørhøjskolen i Århus Michael Kaalund

AVR MP3 29-05-08 05576 Ingeniørhøjskolen i Århus Michael Kaalund AVR MP3 29-05-08 Indholdsfortegnelse 1 Introduktion...2 2 Udviklingsmiljø...2 3 Beskrivelse af systemet...3 3.1 VS1001k...3 3.2 MP3 file formatet...6 4 Konklusion...6 5 Litteratur liste...6 6 Illustrations

Læs mere

Journal JTAG: Udarbejde af: Benjamin Grydehøj I samarbejde med PDA Projektgruppen. Elektronikteknologafdelingen på Erhvervsakademi Fyn.

Journal JTAG: Udarbejde af: Benjamin Grydehøj I samarbejde med PDA Projektgruppen. Elektronikteknologafdelingen på Erhvervsakademi Fyn. Journal JTAG: Udarbejde af: Benjamin Grydehøj I samarbejde med PDA Projektgruppen Elektronikteknologafdelingen på Erhvervsakademi Fyn. Journal JTAG Xilinx XC9536 29-9-3 Generel beskrivelse af JTAG: JTAG:

Læs mere

GSM SMS Modem MODEL: SA RTU-1 V1.01

GSM SMS Modem MODEL: SA RTU-1 V1.01 GSM SMS Modem MODEL: SA RTU1 V1.01 Brugervejledning Indgange: Der er fire indgange på modulet. De kan programmeres som normale indgange. De kan programmeres som tæller. Udgange: Der er en udgang på modulet

Læs mere

Datamaters arkitektur og programmering

Datamaters arkitektur og programmering Mikael Svenstrup Datamaters arkitektur og programmering 1/24 Datamaters arkitektur og programmering MM11: Seriel kommunikation 2 (SW) Indhold Mikael Svenstrup Datamaters arkitektur og programmering 2/24

Læs mere

Arduino Programmering

Arduino Programmering Microcontroller, Arduino I teknologi skal vi lære at lave programmer til uc for at have muligheden til eksamen at kunne lave intelligente el-produkter. I hvert fald skal vi have set mulighederne, og forstået

Læs mere

System Arkitektur og Integration

System Arkitektur og Integration Mikael Svenstrup System Arkitektur og Integration 1/24 System Arkitektur og Integration MM11: Seriel kommunikation 2 (SW) Indhold Mikael Svenstrup System Arkitektur og Integration 2/24 Tidligere har i

Læs mere

FireBUS PARKERINGSVENTILATION

FireBUS PARKERINGSVENTILATION FireBUS PARKERINGSVENTILATION QUICK GUIDE Quick guiden beskriver hvordan et mindre anlæg kan installeres og idriftsættes. Alle moduler tildeles en individuel adresse på DIP-switchen i modulet Modulerne

Læs mere

IAI Quick Start Guide

IAI Quick Start Guide IAI Quick Start Guide Opsætning: Manualen til controllerene ligger i: Produkter\IAI\Manual\RoboCylinder\Controller\ Her ligger den i en undermappe alt efter hvilken type controller det er. Installer RCPC

Læs mere

Lyskryds. Thomas Olsson Søren Guldbrand Pedersen. Og der blev lys!

Lyskryds. Thomas Olsson Søren Guldbrand Pedersen. Og der blev lys! Og der blev lys! OPGAVEFORMULERING:... 2 DESIGN AF SEKVENS:... 3 PROGRAMMERING AF PEEL KREDS... 6 UDREGNING AF RC-LED CLOCK-GENERAOR:... 9 LYSDIODER:... 12 KOMPONENLISE:... 13 DIAGRAM:... 14 KONKLUSION:...

Læs mere

Interrupt - Arduino. Programmering for begyndere Brug af Arduino. Kursusaften 6 EDR Hillerød Knud Krogsgaard Jensen / OZ1QK

Interrupt - Arduino. Programmering for begyndere Brug af Arduino. Kursusaften 6 EDR Hillerød Knud Krogsgaard Jensen / OZ1QK Programmering for begyndere Brug af Arduino Programmeringskursus Interrupt - Arduino EDR Hillerød Knud Krogsgaard Jensen / OZ1QK Interrupts Programmeringskursus Genbrug Interrupts Betyder blot at man afbryder

Læs mere

Microcontroller, Arduino

Microcontroller, Arduino Microcontroller, Arduino Programmerbar elektronik. uc Vi skal lære at lave programmer til uc for at kunne lave el-produkter. Forstå princippet i programmering af en uc og se mulighederne. Programmeringen

Læs mere

Der er derfor, for at alle kan sende, kun tilladt, at sende intermitterende. Altså korte pakker. ( Dette skal dog verificeres!!)

Der er derfor, for at alle kan sende, kun tilladt, at sende intermitterende. Altså korte pakker. ( Dette skal dog verificeres!!) MHz KIT Rev: /- Det er ikke tilladt, at man bare udsender radiobølger på den frekvens, man ønsker. Forskellige frekvenser er udlagt til forskellige formål. Nogle til politiet, militæret, FM-radio-transmission,

Læs mere

Dansk Mink Papir. Teknisk brugermanual

Dansk Mink Papir. Teknisk brugermanual Dansk Mink Papir Teknisk brugermanual Styring til FIX tørrekasse Beskrivelse Enheden styrer en AC blæser-motor via en relæudgang. Betjening foregår via et tastatur og et display, og brugeren kan vælge

Læs mere

Mikrodatamatsystemer. P3 Lagerrobot. Gruppe: DE3-2-e09 Universitet: Esbjerg Institute of Technology 2009 3. semester

Mikrodatamatsystemer. P3 Lagerrobot. Gruppe: DE3-2-e09 Universitet: Esbjerg Institute of Technology 2009 3. semester Mikrodatamatsystemer P3 Lagerrobot Gruppe: DE3-2-e09 Universitet: Esbjerg Institute of Technology 2009 3. semester Titelblad Tema: Projekttitel: Gruppe: Hovedvejleder: Mikrodatamatsystemer Lagerrobot

Læs mere

Kom godt i gang med Mini Bots fra

Kom godt i gang med Mini Bots fra Kom godt i gang med Mini Bots fra Indholdsfortegnelse Generel Information... 3 Elektricitet... 3 Robotter, kunstige mennesker?...3 Forklaring af komponenter... 4 Robot-byggesættet inderholder følgende:...4

Læs mere

SPIDER Quick guide. DATO: August 2017 FORHANDLER: WASYS A/S. Langebjergvænget Roskilde

SPIDER Quick guide. DATO: August 2017 FORHANDLER: WASYS A/S. Langebjergvænget Roskilde SPIDER Quick guide DATO: August 2017 FORHANDLER: WASYS A/S Langebjergvænget 18 4000 Roskilde +45 7221 7979 Indhold Om SPIDER... 3 Funktioner ved SPIDER... 3 Spændingsforsyning... 3 Installation og fysiske

Læs mere

Example sensors. Accelorometer. Simple kontakter. Lysfølsomme. modstande. RFID reader & tags. Temperaturfølsomme. Flex Sensor.

Example sensors. Accelorometer. Simple kontakter. Lysfølsomme. modstande. RFID reader & tags. Temperaturfølsomme. Flex Sensor. Simple kontakter Accelorometer Example sensors Lysfølsomme modstande RFID reader & tags Temperaturfølsomme modstande Flex Sensor Ultralyds afstandsmåler Piezo Pressure/vibration Piezo Sound/buzzer Peltier

Læs mere

WEA-Base Brugervejledning til vejetransmitter

WEA-Base Brugervejledning til vejetransmitter WEA-Base Brugervejledning til vejetransmitter Version 3.4 WEA-Base Brugervejledning til vejetransmitter WEA-Base Brugervejledning til vejetransmitter Version 3.4 Indholdsfortegnelse 1. Tekniske data...

Læs mere

Nedenstående opgaver er lavet til en Allen-Bradley PLC, men uden videre tilpasses andre PLC typer.

Nedenstående opgaver er lavet til en Allen-Bradley PLC, men uden videre tilpasses andre PLC typer. PLC, analogteknik Øvelse 1 Nedenstående opgaver er lavet til en Allen-Bradley PLC, men uden videre tilpasses andre PLC typer. Timer 1.1 "TON" Timer on delay: I skal konstruerer en styring, hvor en lampe

Læs mere

Projekt - RoboNet Del Journal.

Projekt - RoboNet Del Journal. Projekt - RoboNet Del Journal. Udarbejdet af: Klaus Jørgensen. Gruppe: Jacob Clausen, Klaus Jørgensen og Ole Rud It og Elektronikteknolog, 2a Erhvervsakademiet Fyn Udarbejdet i perioden: 20/01-03 03/02-03

Læs mere

Efter installation af GEM Drive Studio software fra Delta s CD-rom, skal hoved skærmbilledet se således ud: (koden til administrator adgang er: admin)

Efter installation af GEM Drive Studio software fra Delta s CD-rom, skal hoved skærmbilledet se således ud: (koden til administrator adgang er: admin) Hurtig opstart af Infranor XtrapulsPac-ak drev: Dette er en enkelt og kortfattet vejledning i opsætningen af XtrapulsPac-ak driver til anvendelse i stand-alone mode. Ingen Profibus forbindelse. For senere

Læs mere

Microcontroller, Arduino

Microcontroller, Arduino Microcontroller, Arduino Kompendium til Arduino-programmering i Teknologi. Vi skal lære at lave programmer til uc for at kunne lave el-produkter. Vi skal forstå princippet i programmering af en uc og se

Læs mere

Programmering i C Programmering af microcontroller i C (4 af 4) 12. april 2007

Programmering i C Programmering af microcontroller i C (4 af 4) 12. april 2007 Programmering i C Programmering af microcontroller i C (4 af 4) 12. april 2007 Mads Pedersen, OZ6HR mads@oz6hr.dk Plan i dag Afrunding af OZ3VB's program Fra "almindelig C" til "microcontroller C" Lighederne

Læs mere

0.1 Modultest af hardware

0.1 Modultest af hardware 0.1 Modultest af hardware Hardwaren af M2 testes ved, at de enkelte blokke først testes hver for sig, og derefter testes det, om hele modulet virker. TS2-monitoren brændes i ROM, og ved at forbinde M2

Læs mere

Arduinostyret klimaanlæg Afsluttende projekt informationsteknologi B

Arduinostyret klimaanlæg Afsluttende projekt informationsteknologi B Arduinostyret klimaanlæg Afsluttende projekt informationsteknologi B Udarbejdet af: Mathias R W Sørensen, klasse 3.4 Udleveringsdato: 02-03-2012 Afleveringsdato: 11-05-2012 IT-vejleder: Karl G. Bjarnason

Læs mere

Indholdsfortegnelse Indledning... 2 Projektbeskrivelse... 2 Dette bruger vi i projektet... 2 Komponenter... 2 Software... 2 Kalibrering...

Indholdsfortegnelse Indledning... 2 Projektbeskrivelse... 2 Dette bruger vi i projektet... 2 Komponenter... 2 Software... 2 Kalibrering... Indholdsfortegnelse Indledning... 2 Projektbeskrivelse... 2 Dette bruger vi i projektet... 2 Komponenter... 2 Software... 2 Kalibrering... 3 Kildekoden... 4 Variabler... 4 Setup... 4 Loop... 4 Indledning

Læs mere

ELCANIC A/S. ENERGY METER Type ENG110. Version 3.00. Inkl. PC program: ENG110. Version 3.00. Betjeningsvejledning

ELCANIC A/S. ENERGY METER Type ENG110. Version 3.00. Inkl. PC program: ENG110. Version 3.00. Betjeningsvejledning ELCANIC A/S ENERGY METER Type ENG110 Version 3.00 Inkl. PC program: ENG110 Version 3.00 Betjeningsvejledning 1/11 Generelt: ELCANIC A/S ENERGY METER Type ENG110 er et microprocessor styret instrument til

Læs mere

FireBUS BRANDSIKRINGSAUTOMATIK For spjældsikrede og røgventilerede systemer

FireBUS BRANDSIKRINGSAUTOMATIK For spjældsikrede og røgventilerede systemer FireBUS BRANDSIKRINGSAUTOMATIK For spjældsikrede og røgventilerede systemer QUICK GUIDE For anlæg med mindre end 12 spjæld og mindre end 100 m kabel-længde er der ikke behov for den store planlægning,

Læs mere

Enes Kücükavci Roskilde Tekniske Gymnasium 20 05 2010 Mathias Turac Informationsteknolog B Vejleder: Karl Bjranasson Programmering C

Enes Kücükavci Roskilde Tekniske Gymnasium 20 05 2010 Mathias Turac Informationsteknolog B Vejleder: Karl Bjranasson Programmering C Indhold Indledning(Enes)... 2 Problemstilling (Enes)... 2 Teori (Enes)... 2 Løsningsforslag (Enes)... 4 RFID relæet (Mathias)... 6 Krav (Enes og Mathias)... 8 Målgruppen (Mathias)... 8 Rekvirent... 8 Implementering(Mathias)...

Læs mere

SSI-9001 IP65. Installations vejledning. SSIHuset v/svane Electronic ApS. GSM fjern kontrol og alarm system

SSI-9001 IP65. Installations vejledning. SSIHuset v/svane Electronic ApS. GSM fjern kontrol og alarm system SSI-9001 IP65 GSM fjern kontrol og alarm system Installations vejledning SSIHuset v/svane Electronic ApS Vejledning Kontakt Tænd/sluk 1 - Strømforsyning: Forbundet til egen 12V / 1.5A strømforsyning (*)

Læs mere

Indholdsfortegnelse:

Indholdsfortegnelse: Dataopsamling Klaus Jørgensen Gruppe. Klaus Jørgensen, Jacob Clausen Og Ole Rud Erhvervs Akademi Fyn Allegade 79 Odense C 5000 fra d 2/12-02 til d 20/12-02 Vejleder: SKH. Forord: Denne rapport omhandler

Læs mere

DiSEqC-Positioner. Best. nr. HN4892 (Brugsanvisnings nr. 361)

DiSEqC-Positioner. Best. nr. HN4892 (Brugsanvisnings nr. 361) DiSEqC-Positioner Best. nr. HN4892 (Brugsanvisnings nr. 361) DiSEqC 1.0/1.2 Positioner DiSEqC-omformer, som gør at man kan styre en parabolmotor 36-Volts type med alle digital modtagere som har standard

Læs mere

Brugervejledning. ComX brugervejledning version 4.1

Brugervejledning. ComX brugervejledning version 4.1 Brugervejledning ComX brugervejledning version 4.1 1 INDHOLD PAKKENS INDHOLD Pakkens indhold side 2 Fjernbetjening side 2 Tilslutning af Settop-boksen side 3 Introduktion til Bredbånds-TV side 4 Tilslutning

Læs mere

Programmeringseksempel tl BCxxxx (Seriel)

Programmeringseksempel tl BCxxxx (Seriel) APP-NOTE 600005 Beckhoff Application Note Date: 8/28/2006 Document Status: First Draft Beckhoff Automation Aps Naverland 2, DK-2600 Glostrup Phone +45 43 46 76 20 Fax +45 43 46 63 35 Programmeringseksempel

Læs mere

Genius laderegulator Monterings og brugervejledning

Genius laderegulator Monterings og brugervejledning Genius laderegulator Monterings og brugervejledning Laderegulatorens opbygning Genius er en avanceret laderegulator for solceller/solpaneler der kontroller, overvåger og styrer indladning og afladning

Læs mere

SSI GSM PORT kontrol brugervejledning. SSI GSM PORT brugervejledning V1.2

SSI GSM PORT kontrol brugervejledning. SSI GSM PORT brugervejledning V1.2 1 13.04.2015 SSI 6000.0410 SSI 6000.0410 GSM PORT brugervejledning V1.2 Port / Dør åbner via telefon opkald eller SMS - op til 30 brugere SSIHuset Svane Electronic Arildsvej 27, Gråmose, 7442 Engesvang

Læs mere

Trådløs Radio modtager

Trådløs Radio modtager Trådløs Radio modtager Installations vejledning for type: RRA85-C2V, 2 relæer, 230VAC RRA85-C2P, 2 relæer, 12/24 AC/DC RRA85-C4V, 4 relæer, 230VAC RRA85-C4P, 4 relæer, 12/24 AC/DC IP 44 DanZafe 1 I. PRODUKTBESKRIVELSE

Læs mere

Diagnostic og Toolbox Instruktion. www.lp.dk Lindgaard Pedersen A/S. Rev. 1.0 Side 1 / 14

Diagnostic og Toolbox Instruktion. www.lp.dk Lindgaard Pedersen A/S. Rev. 1.0 Side 1 / 14 EL-PAS -Cruise II ANDROID Diagnostic og Toolbox Instruktion LP www.lp.dk Lindgaard Pedersen A/S Side 1 / 14 Indhold Denne vejledning indeholder instruktion til brug af Cruise Android App, hentet fra Android

Læs mere

QUICKVEJLEDNING til Piccolo Light

QUICKVEJLEDNING til Piccolo Light QUICKVEJLEDNING til Piccolo Light Montering 1. Piccolo Light kan installeres uden brug af kommunikation via GSM, men installeres et SIM-kort i enheden, vil man bl.a. kunne få alarmer som sms og email.

Læs mere

Analog Øvelser. Version. A.1 Afladning af kondensator. Opbyg følgende kredsløb: U TL = 70 % L TL = 50 %

Analog Øvelser. Version. A.1 Afladning af kondensator. Opbyg følgende kredsløb: U TL = 70 % L TL = 50 % A.1 Afladning af kondensator Opbyg følgende kredsløb: U TL = 70 % L TL = 50 % Når knappen har været aktiveret, ønskes lys i D1 i 30 sekunder. Brug formlen U C U start e t RC Beskriv kredsløbet Find komponenter.

Læs mere

MiniPlex-41USB NMEA-0183 multiplexer Betjeningsvejledning

MiniPlex-41USB NMEA-0183 multiplexer Betjeningsvejledning MiniPlex-41USB NMEA-0183 multiplexer Betjeningsvejledning MiniPlex-41USB, V1.1 Firmware V1.20 SeaTech, 2002 Indledning: MiniPlex-41USB er en 4-kanals data multiplexer, som giver mulighed for tilslutning

Læs mere

Fag: Projekt E1PRJ1 Emne: Kravspecifikation Softdrink-Automat Gruppe: 6 Dato: 10. april 2003 Medlemmer: Benjamin Sørensen, Joanna Christensen, Jacob

Fag: Projekt E1PRJ1 Emne: Kravspecifikation Softdrink-Automat Gruppe: 6 Dato: 10. april 2003 Medlemmer: Benjamin Sørensen, Joanna Christensen, Jacob Fag: Projekt E1PRJ1 Emne: Kravspecifikation Softdrink-Automat Gruppe: 6 Dato: 10. april 2003 Medlemmer: Benjamin Sørensen, Joanna Christensen, Jacob Nielsen, Jesper Kock, Klaus Eriksen, Mikkel Larsen og

Læs mere

MP3 player med DMX interface.

MP3 player med DMX interface. Jægergårdsgade 152/05A DK-8000 Aarhus C DENMARK WWW.WAHLBERG.DK MP3 player med DMX interface. Funktion: En avanceret Mp3spiller med forskellige styringsmuligheder, velegnet til brug i museer, teatre, udstillinger

Læs mere

Digital positioner type RE 3446

Digital positioner type RE 3446 Installations- og driftsvejledning IN145 Digital positioner type Indholdsfortegnelse: Side 1 Generel information 2 2 Montering og tilslutning 2 3 Idriftsættelse 3 4 Drifts funktioner 6 5 Funktions beskrivelser

Læs mere

\ \ Computerens Anatomi / /

\ \ Computerens Anatomi / / HTX Roskilde - mat-it-prog, 1.4 \ \ Computerens Anatomi / / Introduktion En PC ( personlige computer ) eller computer er bygget op af forskellige komponenter. Vi vil hermed gennemgå størstedelen af computerens

Læs mere

STYKLISTE AP 500 MANUAL 1 1 ELEKTRONIK MODUL 2 1 SERVOMOTOR 3 1 LEDNINGSNET 5 1 AP 500 MONTERINGS KIT 5.1 1 WIRETRÆK BESLAG

STYKLISTE AP 500 MANUAL 1 1 ELEKTRONIK MODUL 2 1 SERVOMOTOR 3 1 LEDNINGSNET 5 1 AP 500 MONTERINGS KIT 5.1 1 WIRETRÆK BESLAG STYKLISTE # ANTAL BESKRIVELSE 1 1 ELEKTRONIK MODUL 2 1 SERVOMOTOR 3 1 LEDNINGSNET 5 1 AP 500 MONTERINGS KIT 5.1 1 WIRETRÆK BESLAG 5.2 3 WIRE BESKYTTER 5.3 1 KABELHOLDER 5.4 1 SPÆNDESKIVE 5.5 1 WIRETRÆK

Læs mere

Alle dip 1 7 sættes til On for at opnå stand-alone operation fra PC.

Alle dip 1 7 sættes til On for at opnå stand-alone operation fra PC. Hurtig opstart af Infranor CD1 p og pm: Dette er en enkelt og kortfattet vejledning i opsætningen af CD 1 p og pm driver til anvendelse i stand-alone mode. Ingen Profibus forbindelse. For senere opkobling

Læs mere

DC-Motor Controller. Brugermanual

DC-Motor Controller. Brugermanual Forside Jægergårdsgade 152/05A DK-8000 Aarhus C DENMARK WWW.WAHLBERG.DK DC-Motor Controller Brugermanual Firmware V4.00 Produkt indhold 1 styreboks til styring af 1 DC-motor. 1 strømforsyning 100 240 volt

Læs mere

MCE2040 SERIEL KOMMUNIKATIONSMODUL

MCE2040 SERIEL KOMMUNIKATIONSMODUL Kokkedal Industripark 4 DK-2980 Kokkedal DANMARK Tlf.: +45 49 18 01 00 Fax: +45 49 18 02 00 MCE2040 SERIEL KOMMUNIKATIONSMODUL Overførsel af status og vægt for digitale vejeceller via simpel PC/PLC protokol

Læs mere

Installationsmanual. 2 Installering...6. 3 Installering SMS sender...7. 4 Installering PSTN/GSM sender...7. 5 Installering PSTN GSM konverter...

Installationsmanual. 2 Installering...6. 3 Installering SMS sender...7. 4 Installering PSTN/GSM sender...7. 5 Installering PSTN GSM konverter... CS 47 Syntax Side 2 Indholdsfortegnelse 1 Introduktion...4 1.1 Funktioner...4 1.2 Forsyning...4 1.3 PSTN support...5 1.4 GSM support...5 1.5 SMS support...5 1.6 Indgange...5 1.7 Udgange...5 1.8 Password...5

Læs mere

TG 8. Indhold: TG8 - Kredsløbsbeskrivelse Gruppemedlemmer: Kim Andersen, Kasper Jensen & Thyge Mikkelsen Dato: Modtaget af: Søren Knudsen

TG 8. Indhold: TG8 - Kredsløbsbeskrivelse Gruppemedlemmer: Kim Andersen, Kasper Jensen & Thyge Mikkelsen Dato: Modtaget af: Søren Knudsen TG 8 EUC-Syd Sønderborg 6. Skoleperiode Elektronikmekaniker Indhold: TG8 - Kredsløbsbeskrivelse Gruppemedlemmer: Kim Andersen, Kasper Jensen & Thyge Mikkelsen Dato: 30 04-2002 Modtaget af: Søren Knudsen

Læs mere

MANUAL FANTRONIC 20AMP. TRIAC SLAVEENHED FOR VENTILATION VER:FAN 1.1 SKIOLD GØR EN FORSKEL!

MANUAL FANTRONIC 20AMP. TRIAC SLAVEENHED FOR VENTILATION VER:FAN 1.1 SKIOLD GØR EN FORSKEL! MANUAL SKIOLD GØR EN FORSKEL! FANTRONIC 20AMP. TRIAC SLAVEENHED FOR VENTILATION VER:FAN 1.1 981 002 317 Ver. 01 11-03-2013 Indhold 1. INTRODUKTION... 4 2. BESKRIVELSE FANTRONIC... 5 2.1 SÅDAN FUNGERER

Læs mere

Indhold. Maskinstruktur... 3. Kapitel 1. Assemblersprog...3. 1.1 Indledning...3 1.2 Hop-instruktioner... 7 1.3 Input og output...

Indhold. Maskinstruktur... 3. Kapitel 1. Assemblersprog...3. 1.1 Indledning...3 1.2 Hop-instruktioner... 7 1.3 Input og output... Indhold Maskinstruktur... 3 Kapitel 1. Assemblersprog...3 1.1 Indledning...3 1.2 Hop-instruktioner... 7 1.3 Input og output... 9 Kapitel 2. Maskinkode... 13 2.1 Den fysiske maskine... 13 2.2 Assemblerens

Læs mere

Internt interrupt - Arduino

Internt interrupt - Arduino Programmering for begyndere Brug af Arduino Internt interrupt - Arduino - Afslutning EDR Hillerød Knud Krogsgaard Jensen / OZ1QK 1 Intern interrupt Jeg vil rydde lidt op. Her er nogle punkter vil har glemt

Læs mere

Intelligent Solar Charge Controller Solar30 User s Manual

Intelligent Solar Charge Controller Solar30 User s Manual OM Solceller Intelligent Solar Charge Controller Solar30 User s Manual Læs venligst denne instruktion grundigt igennem, før du bruger den. 1 Produkt introduktion: Denne controller er en slags intelligent

Læs mere

Navn: Søren Guldbrand Pedersen Klasse: 2i Fag: up/ansi Opgave: Brev til Sigurd Lære: John Austin Side 1 af 8 Dato: 14-05-2003

Navn: Søren Guldbrand Pedersen Klasse: 2i Fag: up/ansi Opgave: Brev til Sigurd Lære: John Austin Side 1 af 8 Dato: 14-05-2003 Side 1 af 8 Dato: 14-05-2003 Til Sigurd Som aftalt vil jeg her fremsende vores program til vores 80C535 kit og display. Det gik jo ud på at vi skulle starte med at få den til at intialiserer displayet,

Læs mere

Flowchart og Nassi ShneidermanN Version. Et flowchart bruges til grafisk at tegne et forløb. Det kan fx være et programforløb for en microcontroller.

Flowchart og Nassi ShneidermanN Version. Et flowchart bruges til grafisk at tegne et forløb. Det kan fx være et programforløb for en microcontroller. Flowchart Et flowchart bruges til grafisk at tegne et forløb. Det kan fx være et programforløb for en microcontroller. Et godt program til at tegne flowcharts med er, EDGE-Diagrammer, eller Smartdraw.

Læs mere

CANSAT & ARDUINO step by step

CANSAT & ARDUINO step by step CANSAT & ARDUINO step by step Jens Dalsgaard Nielsen SATLAB Aalborg Universitet Danmark jdn@space.aau.dk 1/51 Arduino CANSAT - MÅL At måle ved hjælp af sensor temperatur, tryk, acceleration, CO2, lys,...

Læs mere

GT2000 GT2000. Brugervejledning

GT2000 GT2000. Brugervejledning Brugervejledning www.gsmteknik.dk 20.2.2019 Side 1 Tekniske specifikationer Spænding Strømforbrug GSM frekvenser Antal kombi indgange Belastning relæudgang Arbejdstemperatur 9-30 VDC typisk 12VDC eller

Læs mere

SD2DUG24. Dupline bus masterkanalgenerator. Fordele. Beskrivelse

SD2DUG24. Dupline bus masterkanalgenerator. Fordele. Beskrivelse Dupline bus masterkanalgenerator Fordele Integreret system. Dupline er varemærket for Carlo Gavazzi's 2- og 3-leder bus-system. Omkostningsbesparende. Bussystemet er en velafprøvet metode til at reducere

Læs mere

CP1x Pulse Servo Quick Guide v1.00. CP1x med Servo - Servoløsning med Pulse Kontrol. Quick Guide

CP1x Pulse Servo Quick Guide v1.00. CP1x med Servo - Servoløsning med Pulse Kontrol. Quick Guide CP1x Pulse Servo Quick Guide v1.00 CP1x med Servo - Servoløsning med Pulse Kontrol Quick Guide Denne quick guide er ment som supplement til de respektive manualer for CP1 PLCen og de monterede servodrev.

Læs mere

Frederiksen. Brugsvejledning for GM-tæller 5135.3X. 23.09.03 Aa 5135.3X

Frederiksen. Brugsvejledning for GM-tæller 5135.3X. 23.09.03 Aa 5135.3X Brugsvejledning for GM-tæller 5135.3X 23.09.03 Aa 5135.3X Disse to tællere er beregnet til at registrere antallet af pulser fra GM-rør. Tælleren kan indstilles til et antal faste tidsintervaller, eller

Læs mere

MVT380 Vejledning. Forord. Website: www.smartgps.dk Kontakt: salg@smartgps.dk. Tillykke med din nye GPS tracker MVT380.

MVT380 Vejledning. Forord. Website: www.smartgps.dk Kontakt: salg@smartgps.dk. Tillykke med din nye GPS tracker MVT380. MVT380 Vejledning Forord Tillykke med din nye GPS tracker MVT380. Denne manual viser hvordan du installerer enheden korrekt. Sørg for at læse denne manual grundigt, før du bruger dette produkt. Brugermanualen

Læs mere

Navn: Søren Guldbrand Pedersen Klasse: 2i Fag: up/ansi C Opgave: Brev til Sigurd Lære: John Austin Side 1 af 13 Dato:

Navn: Søren Guldbrand Pedersen Klasse: 2i Fag: up/ansi C Opgave: Brev til Sigurd Lære: John Austin Side 1 af 13 Dato: Side 1 af 13 Dato: 03-06-03 Til Sigurd Som aftalt får du nu tilbygningen til 80C535 kittet, keyboard og programmet med programopdatering. Den sidste opgave her, gik så ud på at tilslutte et tastatur, og

Læs mere

Hvad skal du vide for at bygge din egen computer?

Hvad skal du vide for at bygge din egen computer? Hvad skal du vide for at bygge din egen computer? Kender du alle de her dele og hvad de gør godt for? Er du mellem 11 og 16 år, og tænker på at sammensætte din egen computer? Så er denne her guide lige

Læs mere

MCE9637 DeviceNet Modul

MCE9637 DeviceNet Modul Kokkedal Industripark 4 DK-2980 Kokkedal DANMARK Tlf: +45 49 18 01 00 Fax: +45 49 18 02 00 MCE9637 DeviceNet Modul MCE9637 til overførsel af status og vægt for digitale vejeceller Gælder for: PIC nr.:

Læs mere

Indholdsfortegnelse: Sikkerhedsprocedurer: Chauvin Arnoux CA 27 Side Fejl! Ukendt argument for parameter.

Indholdsfortegnelse: Sikkerhedsprocedurer: Chauvin Arnoux CA 27 Side Fejl! Ukendt argument for parameter. Indholdsfortegnelse: Sikkerhedsprocedure Side 2 Instrumentbeskrivelse Side 3 Display Side 3 Måleprocedure Side 4 Måling med optisk kontakt Side 4 Måling med ekstern input Side 4 Forbindelse Side 5 Instrumentet

Læs mere

Proces Styring STF-1 til BalTec Radial Nittemaskine med RC 20 STYRING

Proces Styring STF-1 til BalTec Radial Nittemaskine med RC 20 STYRING [Skriv tekst] [Skriv tekst] Proces Styring STF-1 til BalTec Radial Nittemaskine med RC 20 STYRING Brugsanvisning Introduktion Styringen og overvågningen af processer med henblik på kvalitetssikring er

Læs mere

KING-METER. Bruger manual J-LCD. Indhold

KING-METER. Bruger manual J-LCD. Indhold KING-METER Bruger manual J-LCD Indhold 1. Forord 2. Udseende og størrelse 2.1. Materiale og farve 2.2. Display størrelse og installation 3. Funktionsoversigt og knap funktion 3.1. Kort introduktion til

Læs mere

Gateway MP til Modbus RTU. Alle BELIMO motorer med MP-Bus kan tilsluttes til MP-siden af UK24MOD. Interface MP / Modbus RTU

Gateway MP til Modbus RTU. Alle BELIMO motorer med MP-Bus kan tilsluttes til MP-siden af UK24MOD. Interface MP / Modbus RTU Gateway MP til Modbus RU. Alle BELIMO motorer med MP-Bus kan tilsluttes til MP-siden af. Interface MP / Modbus RU ilslutning af MP / MF(2) motorer og BF-opLine motorer til Modbus RU Op til 8 motorer og

Læs mere

Det er nødvendigt for brugeren at læse, forstå og følge vejledningens instruktioner.

Det er nødvendigt for brugeren at læse, forstå og følge vejledningens instruktioner. Tams Elektronik LD-G-3 / LD-W-3 (1) Lokomotivdekoder LD-G-3 / LD-W-3 i Märklin-Motorola format Denne oversættelse omfatter monterings- og anvendelsesvejledningerne til LD-G-3 / LD-W-3 dekoderen. Den originale

Læs mere

Digital tæller Programerbar for MIX magnetisk målebånd

Digital tæller Programerbar for MIX magnetisk målebånd SERIE Z-20E.SN005 Digital tæller Programerbar for MIX magnetisk målebånd ELGO - ELECTRIC Gerätebau und Steuerungstechnik GMBH D - 78239 Rielasingen, Postfach 11 30, Carl - Benz - Straße 1 Telefon 07731

Læs mere

Brugervenlig og kommunikativ!

Brugervenlig og kommunikativ! Brugervenlig og kommunikativ! Altivar 312 Frekvensomformer til tre-faset asynkrone motorer, 0,18 til 2,2 kw en-faset 240V 0,18 til 15kW tre-faset 200-600V Specielle funktioner til alle typer af maskiner

Læs mere

Dit eventyr med robotter Der er dig, der bygger

Dit eventyr med robotter Der er dig, der bygger Dit eventyr med robotter Der er dig, der bygger Indhold Introduktion... 3 Edison og LEGO-kompatibilitet... 4 Eventyr 1 EdGravemaskine... 5 Eventyr 2 EdPrinteren... 17 Side 2 Introduktion EdBog3 Det er

Læs mere

Begrænsningen ligger normalt i tre forhold: Lagerstørrelse Antal indgangsenheder Antal udgangsenheder

Begrænsningen ligger normalt i tre forhold: Lagerstørrelse Antal indgangsenheder Antal udgangsenheder Begrænsningen ligger normalt i tre forhold: Lagerstørrelse Antal indgangsenheder Antal udgangsenheder Programmerbare styresystemer Løs programmeringsenhed Det vil dog ofte være formålstjenligt af have

Læs mere

Brugermanual til System 2000

Brugermanual til System 2000 Brugermanual til System 2000 Vigtigt Læs hele denne manual før komponenten tages i brug, den indeholder vigtig information for brugeren. 5/9 2007 L:\Vejledninger\Nye vejledninger\vejledning_system2000.pdf

Læs mere

Øvelse. Øvelse. D.1 CMOS-øvelse. Under øvelsen laves notater, som senere bruges i den efterfølgende journal! Opgave 1:

Øvelse. Øvelse. D.1 CMOS-øvelse. Under øvelsen laves notater, som senere bruges i den efterfølgende journal! Opgave 1: D.1 CMOS-øvelse Under øvelsen laves notater, som senere bruges i den efterfølgende journal! Opgave 1: A): Opbyg flg. kredsløb: Tilslut til 12 Volt. De to indgange er kortsluttede, og forbundet til en ledning

Læs mere

BETJENINGS- & MONTERINGSVEJLEDNING FOR TEEJET 1000 MONITOR

BETJENINGS- & MONTERINGSVEJLEDNING FOR TEEJET 1000 MONITOR BETJENINGS- & MONTERINGSVEJLEDNING FOR TEEJET 1000 MONITOR TeeJet No. 020-012-DK; Version 2.00 Mølhavevej 2 9440 Aabybro Denmark Tel. +45 9696 2500 Fax. +45 9696 2501 Internet: www.teejet.com 2 TEEJET

Læs mere

Boolsk algebra For IT studerende

Boolsk algebra For IT studerende Boolsk algebra For IT studerende Henrik Kressner Indholdsfortegnelse 1 Indledning...2 2 Logiske kredsløb...3 Eksempel:...3 Operatorer...4 NOT operatoren...4 AND operatoren...5 OR operatoren...6 XOR operatoren...7

Læs mere

TÆND OG SLUK LAPTIMEREN:

TÆND OG SLUK LAPTIMEREN: TÆND OG SLUK LAPTIMEREN: TÆND/SLUK Det er meget simpelt at betjene en Unipro Laptimer for der er meget få funktioner der er skjult. En af dem er at tænde og slukke for Laptimeren. - For at tænde Laptimeren,

Læs mere

LAVET AF HANS-CHRISTIAN KELLER 1

LAVET AF HANS-CHRISTIAN KELLER 1 ELEVENS Indhold Lektion nr. 1 Lær Edison at kende... 2 Arbejdsark 1.1 Batterier, knapper og sensorer... 2 Arbejdsark 1.2 - Programmer Edison ved at bruge stregkoder... 4 Arbejdsark 1.3 Prøv Edisons sensorer...

Læs mere

KOMPONENT BESKRIVELSE

KOMPONENT BESKRIVELSE Beskrivelse : S12-20-8A tegningsnummer 630014 Program som styrer 5 individuelle trykforløb på samme tid. Kan køre med intern tryk-reservoir. Kommunikerer med PC-program 714014 Dato Sign. Beskrivelse af

Læs mere

SSIHuset Svane Electronic Arildsvej 27, Gråmose, DK-7442 Engesvang. Tastatur med proximity standard læser Model 12 og 20

SSIHuset Svane Electronic Arildsvej 27, Gråmose, DK-7442 Engesvang. Tastatur med proximity standard læser Model 12 og 20 1 21.11.2010 Tastatur med proximity standard læser Model 12 og 20 Ny version December 2010 Med variabel kode længde SSIHuset Svane Electronic Arildsvej 27, Gråmose, DK-7442 Engesvang ssi@svane-el.dk www.svane-el.dk

Læs mere

Projekt. Analog Effektforstærker.

Projekt. Analog Effektforstærker. Projekt. Analog Effektforstærker. Udarbejdet af: Klaus Jørgensen. Gruppe: Klaus Jørgensen Og Morten From Jacobsen. It og Elektronikteknolog. Erhvervsakademiet Fyn Udarbejdet i perioden: 7/0-03 /-03 Vejledere:

Læs mere

Impac230. Beskrivelse. Egenskaber. Impac 230

Impac230. Beskrivelse. Egenskaber. Impac 230 I1 I2 I3 I4 I5 I6 I7 I8 IC O1 O2 O3 O4 OC +10V +10V RS232 RJ45 I²C RJ11 Error Power +10V E5 E4 E3 E2 E1 M1+ P- P+ 12-36VDC M1- M2- M2+ Impac230 Beskrivelse Impac230 er som hele impac-serien designet med

Læs mere

Beskrivelse af vejrstation OM1 NETLON NETLON. Dette dokument indeholder en beskrivelse af en vejrstation OM1 fra Netlon.

Beskrivelse af vejrstation OM1 NETLON NETLON. Dette dokument indeholder en beskrivelse af en vejrstation OM1 fra Netlon. Beskrivelse af vejrstation OM1 NETLON Dette dokument indeholder en beskrivelse af en vejrstation OM1 fra Netlon. Indholdsfortegnelse Kort beskrivelse... 4 1.1 Anvendelse... 4 1.2 Konstruktion... 4 Funktionsbeskrivelse...

Læs mere

EXIT-SOUND. Brugervejledning Exit-Sound talevarslingsanlæg Ver. 1.10

EXIT-SOUND.   Brugervejledning Exit-Sound talevarslingsanlæg Ver. 1.10 Brugervejledning Exit-Sound talevarslingsanlæg Ver. 1.10 1 Indhold: Forside... side 1 Indholdsfortegnelse... side 2 Rack konfiguration... side 3 Betjenings knapper på talevarslings Controller... side 3

Læs mere

User Guide AK-SM 720 Boolean logic

User Guide AK-SM 720 Boolean logic User Guide AK-SM 720 Boolean logic ADAP-KOOL Refrigeration control systems Anvendelse Funktionen er indeholdt i Systemmanager type AK-SM 720, og kan anvendes til brugerdefinerede funktioner. Funktionerne

Læs mere

Svendeprøve Projekt Tyveri alarm

Svendeprøve Projekt Tyveri alarm Svendeprøve Projekt Tyveri alarm Påbegyndt.: 8/2-1999 Afleveret.: 4/3-1999 Projektet er lavet af.: Kasper Kirkeby Brian Andersen Thomas Bojer Nielsen Søren Vang Jørgensen Indholds fortegnelse 1. INDLEDNING...3

Læs mere

Lektion 6 / Analog Arduino

Lektion 6 / Analog Arduino 1 Jeremiah Teipen: Electronic Sandwich BSPR11 Lektion 6 / Analog Arduino Mogens Jacobsen / moja@itu.dk Siden sidst 2 Har I fået nogle LEDs til at blinke? Har I brugt kontakter? Hvad har I eksperimenteret

Læs mere

Programmering. Det rent og skært nødvendige, det elementært nødvendige! Morten Dam Jørgensen

Programmering. Det rent og skært nødvendige, det elementært nødvendige! Morten Dam Jørgensen Programmering Det rent og skært nødvendige, det elementært nødvendige! Morten Dam Jørgensen Oversigt Undervisningen Hvad er programmering Hvordan er et program organiseret? Programmering og fysik Nobelprisen

Læs mere

Seriel kommunikation

Seriel kommunikation Odense Tekniske Gymnasium Seriel kommunikation Skribenter Mathias Bejlegaard Madsen, 3.H Udførelsesdato 4. januar til Vejleder Afleveringsdato Indholdsfortegnelse 1 Introduktion 2 2 Bedstemor diagram 2

Læs mere

Brugervejledning. Fjernbetjening display MT-5

Brugervejledning. Fjernbetjening display MT-5 Brugervejledning Fjernbetjening display MT-5 OVERSIGT Det digitale fjernbetjening display, der viser dig anlæggets driftsinformation, system fejl og selvdiagnostik udlæsning. Oplysningerne vises på et

Læs mere

Installationsmanual SuperSail Marine Alarm Marine Alarm Wireless

Installationsmanual SuperSail Marine Alarm Marine Alarm Wireless Installationsmanual SuperSail Marine Alarm Marine Alarm Wireless ID er for trådløse sensorer: Fjernbetjening: Bevægelsessensor: Vandsensor Landstrømsensor: Dørsensor: Temperatursensor: Side 1 af 8 Indholdsfortegnelse

Læs mere

2/3 Akset digital tæller

2/3 Akset digital tæller SERIE Z59E 2/3 Akset digital tæller for Elgo Magnetisk målebånd og / eller Encoder ELGO - ELECTRIC Gerätebau und Steuerungstechnik GMBH D - 78239 Rielasingen, Postfach 11 30, Carl - Benz - Strafle 1 Telefon

Læs mere

BILAG. til. Kommissionens delegerede forordning

BILAG. til. Kommissionens delegerede forordning EUROPA- KOMMISSIONEN Bruxelles, den 12.10.2015 C(2015) 6823 final ANNEX 1 PART 6/11 BILAG til Kommissionens delegerede forordning om ændring af Rådets forordning (EF) nr. 428/2009 om en fællesskabsordning

Læs mere

Matlab script - placering af kran

Matlab script - placering af kran Matlab script - placering af kran 1 Til at beregne den ideelle placering af kranen hos MSK, er der gjort brug af et matlab script. Igennem dette kapitel vil opbygningen af dette script blive gennemgået.

Læs mere

Bit:Bot Introduktion og første opgave

Bit:Bot Introduktion og første opgave Bit:Bot Introduktion og første opgave INDLEDNING Introduktion og program er hentet og oversat fra firmaet 4tronics hjemmeside: http://4tronix.co.uk/blog/?p=1490 samt fra Mark Atkinsons hjemmeside Multiwingspan:

Læs mere