Automatiseret katapult
|
|
- Jette Thorsen
- 8 år siden
- Visninger:
Transkript
1 Automatiseret katapult Kian Soleiman Casper Lindholt Andersen Rune Lauritzen Jesper Dalsgaard Mikkel Krautz DE3-1-E08 2. september 17. december 2008
2
3 Det Teknisk-Naturvidenskabelige Fakultet Aalborg Universitet Esbjerg 3. Semester TITEL: Automatiseret katapult PROJEKTPERIODE: P3, efterår september 17. december 2008 PROJEKTGRUPPE: DE3-1-E08 GRUPPEMEDLEMMER: Kian Soleiman Casper Lindholt Andersen Rune Lauritzen Jesper Dalsgaard Mikkel Krautz VEJLEDERE: SYNOPSIS: Der konstrueres en fuldautomatisk LE- GO katapult der styres ved hjælp af en MSP430F149 microcontroller. Katapulten ønskes i stand til at panorere 180, hvilket gør at den selvstændigt kan finde og affyre efter mål der befinder sig imellem cm fra enheden. Dette skal ske uden inputs fra andet end sensorer monteret på enheden. Efter udførelse af diverse test kan det konkluderes, at katapulten fungere modulvis i forhold til de opstillede krav. Mikael Svenstrup Morten Bisgaard OPLAG: 8 TOTAL SIDEANTAL: 82
4 2 Forord Denne rapport er udarbejdet på Aalborg Universitet Esbjerg af DE3-1-E08, som dokumentation for gruppens P3-projekt på 3. semester, efteråret Gruppen har valgt at kigge på problemstillingen: Kan man konstruere en panorerende katapult styret af microcontroller, som kan ramme mål uden andet end inputs fra sensorer på enheden?. Rapportens målgruppe er vores vejledere samt de andre medstuderende på D/E-retningen. Rapporten er skrevet i et forståeligt sprog, der gør at læseren ikke behøver den store tekniske baggrundsviden. Visse ord er dog forklaret med fodnoter. Projektet opfylder de kriterier, som står anført i studieordningen. I rapporten henvises der til kilder og figurhenvisninger ved at angive afsnittet med [#]. Informationer om kilderne kan findes ved opslag i kildelisten bagerst i rapporten. Med rapporten medfølger en CD-ROM, der indeholder datablade for de forskellige komponenter og microcontrolleren, kildekode for software og tests, videoer af forskellige test, samt selve rapporten i PDF format. Der er inkluderet kodeeksempler i rapporten, koden står på følgende måde: 1 #include <s t d i o. h> 2 3 int main ( int argc, char argv [ ] ) 4 { 5 p r i n t f ( " Hello, World! \ n " ) ; 6 return 0 ; 7 } Kian Soleiman Casper Lindholt Andersen Rune Lauritzen Jesper Dalsgaard M ikkel Krautz
5 Indhold Indledning 6 1 Problemformulering Problemformulering Problemafgrænsning Kravspecifikation Krav til rummet Krav til målet Krav til katapult Krav til ammunition Katapult Basedesign Base Affyringsmekanisme Låsemekanisme Afstandsmåler Motor Motorstyring DC motor Kasteparabel Implementering i katapulten Støj Microcontroller MSP Registre Clocks Digital I/O Konfiguration af digital I/O Anvendelse af digitale I/O porte Anvendelse af interrupts på digitale I/O ben Analog/Digital Converter
6 4 INDHOLD Virkemåde Konfiguration Kode Interrupts Interrupt prioritet Diskussion Kode RS Virkemåde USART Kode Timer bit tæller/timer for timer A Timer modes Anvendelse i software PWM PWM teori PWM på MSP Software design Stadier Initialisering Reset Målsøgning Affyring Moduler Interrupt-modulet Watchdog-modulet Panorerings-modulet Afstandsmåler-modulet Timer-modulet RS232-modulet Affyrings-modulet Hovedprogrammet main.c Test & Konklusion Indledning MSP Testspecifikation Resultat Konklusion Afstandsmåler Testspecifikation
7 INDHOLD Resultat Konklusion Panoreringsmotor Testspecifikation Resultatet Konklusion Låsemotor Testspecifikation Resultater Konklusion Affyringsmotor Testspecifikation Resultater Konklusion Træfsikkerhed Testspecifikation Resultater Konklusion Samlet system Testspecifikation Resultater Konklusion Teknologivurdering Konklusion Figurer 76 Litteratur 77 A Port oversigt 79
8 6 INDHOLD
9 Indledning I dette semester arbejdes med microcontrollere og programmering af disse. For at opnå de stillede krav til 3. semester projektet, er der lagt fokus på opbygning af en statisk katapult, der ved hjælp af en Texas Instruments MSP430F149 microcontroller kan scanne efter et mål, affyre efter målet og derefter søge videre efter andre mål. Da formålet med dette projekt er at lave et embeddet system, der kan fungere uden inputs fra andet end de sensorer den er udstyret med, virkede det derfor interessant at modificere en katapult, så den bliver det centrale i et microcontroller-styret system. 7
10 8 INDHOLD
11 Kapitel 1 Problemformulering 9
12 10 KAPITEL 1. PROBLEMFORMULERING 1.1 Problemformulering En katapult er pr. definition en genstand i hvilken en oplagret energi pludselig frigives, med det formål at affyre et objekt en distance. Historisk set, har katapulten været en krigsmaskine. I middelalderen benyttede man katapulter til at skyde store sten og lign. mod fjender. I dag er begrebet brugt mere mekanisk, i den forstand at man benytter oplagret energi til eksempelvist at trække flyvemaskiner op i fart, så de kan lette fra skibe og lign. Kan man lave en katapult af middelalder-typen vha. moderne elektronik? Katapulten skal opbygges således en microcontroller kan benyttes til at justere den afstand den skyder, så kan man fjerne de store ballaster man benyttede i middelalderen, og forbedre præcisionen, så man eventuelt kan ramme en række opstillede mål. Fremstilles der en LEGO-katapult, vil det så være muligt at udstyre den med en række sensorer, så den kan styres af en microcontroller? Med hjemmedesignet hardware, kan man lave en motorstyring der muliggør at styre de væsentlige funktioner i en katapult, og tillader desuden tilføjelse af funktioner som panorering, automatisk ladefunktion og lign. Alle disse er ting som ikke var at finde på den klassiske katapult. Styres en katapult af en microcontroller, åbner muligheden sig også for at styre den manuelt, samt at få statusudlæsninger, gennem en terminal. Det mest interessante ved en elektronisk katapult, er dog automatisering af arbejdet, så katapulten selv kan scanne området for potentielle mål, selvstændigt bestemme afstanden dertil, og affyre et skud. Ud fra dette kan der uddrages en problemstilling, der vil blive arbejdet ud fra: "Kan man konstruere en panorerende katapult styret af microcontroller, som kan ramme mål uden andet end inputs fra sensorer på enheden?"
13 1.2. PROBLEMAFGRÆNSNING Problemafgrænsning I forbindelse med at udarbejde et system styret af en microcontroller, er det i gruppen besluttet at konstruere en automatisk katapult. Designet af et sådant system er afgrænset til følgende punkter: Konstruktionen opbygges af LEGO. Konstruktionens platform skal ikke kunne tilte. Konstruktionens terminalprogram, skal benyttes til debugning, samt kontrol af systemets status. Softwaren til den variable affyring er designet til statiske mål, og indeholder ikke beregninger baseret på det skrå kast. Konstruktionen skal benyttes indendørs og på plane flader. Konstruktionen er bygget op, så den skal ramme indenfor forudbestemte zoner, der ligger indenfor afstandsmåleren rækkevidde. Konstruktionen skal lades manuelt. Projektet omhandler microcontroller-styrede systemer, og i forbindelse med dette benyttes en Texas Instruments MSP-430F149 microcontroller, som den centrale styringsenhed i prototypen.
14 12 KAPITEL 1. PROBLEMFORMULERING 1.3 Kravspecifikation Ud fra problemformulering og afgrænsning, stilles følgende krav til katapulten. Kravspecifikationen er delt op i flere dele i forhold til hvad kravene tilhører, således der er krav til selve rummet, hvor katapulten befinder sig, målet, katapulten og ammunitionen Krav til rummet Gulvet skal være plant indenfor en radius på en meter Krav til målet Målet skal stå vinkelret i forhold til katapulten. Målet skal være minimum 15 cm bredt og 20 cm højt. Der skal højest være et mål ad gangen indenfor rækkevidden. Målet må ikke være sort Krav til katapult Katapulten skal være opbygget på en ubevægelig (statisk) base. Katapulten skal kunne panorere 180 vha. LEGO DC motorer. Katapulten skal kunne ramme mål indenfor en rækkevidde af cm, opdelt i 3 zoner. Zone 3: cm, zone 2: cm, zone 1: cm. Med en fejlmargin på højest ±3 cm. Med en træfsikkerhed på minimum 6 ud af 10 gange. Katapultens motorer skal være DC motorer, som styres gennem en H-bro via microcontrolleren Krav til ammunition Ammunitionen skal være kugleformet. Ammunitionens vægt skal gøre den upåvirkelig fra trækvinde.
15 Kapitel 2 Katapult 13
16 KAPITEL 2. KATAPULT Basedesign Der er designet en statisk katapult af LEGO. Der vil i det følgende blive gennemgået de forskellig moduler i basen. Udover selve basen er der også to andre moduler: affyrings-modulet til affyring og låse-modulet der kan låse skeen fast i forbindelse med affyring Base Basen til katapulten har to formål. Den skal være stabil nok til ikke at vælte idet katapulten affyres. Derudover indeholder den katapultens panoreringsfunktion, der gør det muligt fra katapultens base at affyre skud spredt udover 180. Panoreringsfunktionen involverer en LEGO DC-motor og to kontakter. Panoreringen foregår således at et tandhjul kører en stang fra den ene side til den anden side, når der panoreres. I hver ende er der en kontakt. Stangen støder mod kontakten, der aktiverer den og får den sendt i den anden retning. Således vil den kunne panorere frem og tilbage uendeligt. Figur 2.1: Billede af katapulten Affyringsmekanisme Affyringsmekanismen på katapulten fungerer ved at der er en ske, der står fastmonteret på en gevindstang i oprejst position. På figur 5.3 kan der ses en illustration af, hvordan skeen oplagrer affyringsmomentet i gevindstangen, ved at en motor vha. en snor, trækker den ned til cirka 70 fra start. Som en del af affyringen
17 2.1. BASEDESIGN 15 træder en låsemotor ind og holder skeen fastlåst i ladt position, samtidig med at affyringsmotoren løsner snoren en bestemt længde, som passer til hvor langt katapulten skal skydes. Når snoren er løsnet nok, og er klar til affyring vil denne motor igen stoppe, og låsemotoren sættes til at bevæge sig tilbage. Dette får skeen til at køre op den længde snor, som er blevet løsnet, og derved affyre et skud. Figur 2.2: Illustration af hvordan momentet opbygges på katapulten. For at bestemme længden af snoren på skeen der skal spændes, er der monteret en omgangstæller, der tæller op samtidig med at motoren kører rundt. På denne måde kan katapulten selv tælle længden fra startposition til den laveste position, og ud fra dette kan det bestemmes hvor meget snoren skal løsnes for at ramme et bestemt mål Låsemekanisme Som tidligere nævnt, er låsemekanismen opbygget for at kunne fastholde skeen, mens den gøres klar til at blive affyret. Låsemekanismen er opbygget med en LEGO stang, som kører mellem to kontakter. Kontakternes funktion i opbygningen af låseenheden, er at stoppe en motor når LEGO-stangen er kørt helt ud til en side. Låsen kunne ligeledes være opbygget med en omgangstæller, men der blev benyttet
18 16 KAPITEL 2. KATAPULT kontakter, idet denne motor ikke drejer så langt, og at en omgangstæller muligvis ikke ville være præcis nok til dette. For at fastlåse skeen, bliver LEGO-stangen kørt ud foran den, og dermed holder den på plads. Med det samme låsen rammer kontakten vil den stoppe. Efter katapulten er klar til at affyre skeen, vil låsen blive kaldt til den anden side, og blive stoppet af den anden kontakt. Ligeledes er det sikret, at låsemekanismen bliver kørt væk, så skeen ikke bliver hevet ned i den, når den er ved at gøre klar til affyring. Figur 2.3: Billede af lock-motor.
19 2.2. AFSTANDSMÅLER Afstandsmåler Afstandsmåleren der benyttes er af typen Sharp GP2D12, den skal bruges til at bedømme afstanden til katapultens mål. Enheden der bliver benyttet er en analog afstandsmåler, da det er det mest optimale til dette projekt. Denne enhed er tilsluttet microcontrolleren gennem en 12-bit AD-converter [?]. Sharp GP2D12 fungerer ved at enheden udsender infrarøde stråler fra emitter siden, og derefter måler på refleksionen af de udsendte stråler. Refleksionen i objektet sker ved at den udsendte infrarøde stråle fra afstandsmåleren rammer objektet og sendes tilbage således, at der dannes en trekant, som på figur 2.4. Afstandsmåleren bruger så vinklen på refleksionen, til at bestemme afstanden til objektet. Figur 2.4: Refleksion af afstandsmåler fra et tilfældigt objekt [6]. Afstandsmåleren har en rækkevidde på cm, som læses vha. dens output i volt fra 0,4 V til 2,6 V. Implementeringen af denne enhed er simpel, idet selve behandlingen af de infrarøde signaler klares internt. Den kan sluttes til og så kan afstanden bestemmes ved at måle på outputtet. På figur 2.5 kan afstandsmålerens output i volt ses på grafen i forhold til centimeter.
20 18 KAPITEL 2. KATAPULT Figur 2.5: Graf over afstandsmålerens sammenhæng mellem volt og centimeter [7].
21 2.3. MOTOR Motor Der anvendes fire almindelige LEGO DC-motorer i opbygningen af katapulten. Motorerne bruges til panoreringsfunktionen, lademekanismen og to af motorerne anvendes i affyringsmekanismen. Alle motorerne styres gennem H-broer af typen L298N, som kører ved inputs fra microprocessoren Motorstyring Der anvendes i alt to L298N H-broer til motorstyring. Det giver hver især mulighed for at sætte de to motorer i fire forskellige stadier, hhv. forward, reverse, locked motor stop, samt free running motor stop. De fire forskellige stadier styres ved at driverkredsen modtager seks inputsignaler (tre til hver motor) fra microcontrolleren, og ud fra dem danner den fire outputsignaler til motorerne. De tre inputs bliver omtalt som V EN, C og D. På figur 2.6 kan de forskellige stadier ses. Figur 2.6: Tabel over de states H-broen kan sættes i vha. inputs [8]. Det kan ud fra figuren ses, at det for at få bevægelse i motorerne er nødvendigt med et højt signal på enable, og derudover enten højt på et af benene C og D. På figur 2.12 kan opbygningen af DC-motorerne på H-broen ses. Figuren viser en halv H-bro, dvs. en H-bro hvorpå der kun er koblet en enkelt motor. Det er således muligt at sætte to DC-motorer til en enkelt H-bro. På hver H-bro er der påsat kondensatorer på hhv. referencespændingen og forsyningsspændingen. Dette er gjort for at forhindre støj fra H-broen. Ligeledes er der sat 4 dioder omkring hver motor, for at ensrette strømmen således det løber gennem H-broen og kører motorerne.
22 20 KAPITEL 2. KATAPULT Figur 2.7: Diagram over opsætning af H-bro med DC-motorer [8]. Begge H-broer bliver forsynet med 9 V til motordelen og en reference spænding på 5 V til forsyning af kredsen. Motorerne vil derfor køre enten fremad eller bagud med fast 9 V, hvis der enten er højt på C eller D benet. En af motorerne vil være sat til at køre med et PWM signal, således det er muligt at nedtrappe de 9 V til en lavere spænding. For yderligere forklaring henvises til afsnit DC motor I projektet benyttes LEGO DC motorer af typen (Se figur 2.8). Disse motorer er velegnede på grund af deres relativt høje trækkraft der gør at de kan belastes i en sådan grad, at de kan benyttes til at panorere katapulten med, samt stramme snoren. Figur 2.8: LEGO-motor af typen [2]. Denne motor kører ubelastet med en hastighed på 360 RPM (omgange i minuttet), og trækker en strøm på 3,6 ma ved 9 V forsyning. Der gælder for
23 2.3. MOTOR 21 denne type motor, som ved de fleste DC motorer, at hastigheden er proportional med spændingen der trækker den. Se f.eks. figur 2.9 [2]. Figur 2.9: Tabel over antallet af omdrejninger, samt vridningsmoment en LEGO motor yder ved forskellige spændinger [2]. En ting værd at bemærke er dog at strømmen stiger markant ved belastning (figur 2.10). Helt op til 360 ma. Da panoreringen af katapultens base belaster panorerings-moteren meget, tages der højde for dette ved at benytte en ekstern strømforsyning til katapulten, i modsætning til den medfølgende til MSP430 Developer Kittet. Med en ekstern strømforsyning er det muligt at trække alle motorerne på en gang. [2] Figur 2.10: Graf over sammenhængen mellem omdrejninger og den strøm motorerne trækker [2].
24 22 KAPITEL 2. KATAPULT 2.4 Kasteparabel En kasteparabel eller det skrå kast, er et udtryk for et projektils bane når det bliver skudt af i en vinkel forskellig fra 90 i forhold til lodret. Er affyringsvinklen vandret vil projektilets bane være lige op, og derefter returnere til nulpunktet. Det er muligt at regne på hvordan projektilets bane gennem luften vil forme sig, hvis man har følgende data om affyringen. Starthastighed. Startvinkel. Start position i y-retning. Start position i x-retning. Figur 2.11: Et eksempel på en kasteparabel [9]. Kasteparablen kan indsættes i et koordinatsystem med startpunkt i origo, som vist på figur Bevægelsen kan beskrives som en bevægelsesvektor opdelt i to dele, en i x- og en i y-retningen: v 0 = ( v 0 cos(α) v 0 sin(α) ) Ved at benytte trekantsberegning kan det ses, at siden liggende på x-aksen, er lig v 0 gange med sinus til affyringsvinklen og siden stående parallelt med y-aksen er lig v 0 gange med cosinus til affyringsvinklen. ( ) ( ) x y = x0 +v 0 c cos(α) y 0 +v 0 c sin(α) Ved at benytte koordinatligningen kan projektilets position og hastighed beregnes ved at isolere c i koordinatligningen for x og herefter indsætte det fundne udtryk i ligningen for y. Resultatet af dette er kasteparablen. y = (1/2g) (v 0 cos 2 (α)) x2 + sin(α) x cos(α) Ud fra denne ligning fremgår det at y er et andengradspolynomium af x, og det vil være en parabel der peger nedad da andengradsleddet har negativt fortegn.
25 2.4. KASTEPARABEL Implementering i katapulten For at implementere kasteparablen i katapulten, skal sammenhængen mellem længden på skuddet, x, og affyringsvinklen alpha i formel 2.4, lagres ved affyring. Affyringshastigheden antages at være konstant, idet det oplagrede moment bør være stærkt nok til at returnere skeen til oprejst position uden at tabe hastighed af betydning. Med disse faktorer på plads kan kasteparablen bruges til kalibrere katapulten. idet man ved skud kan formode at den rammer ved højden y=0. Ved første skud kan man derfor se hvor skuddet rammer i forhold til målet og herudfra beregne farten v 0, idet det er den eneste ubekendte. Når v 0 er fundet skal den optimale affyringsvinkel beregnes, den ubekendte i formlen vil herefter være alpha idet afstanden til målet er givet vha. afstandsmåleren. Når affyringsvinklen er fundet, gøres katapulten klar til affyring og snoren løsnes til dette antal grader. Så skulle katapulten kunne ramme målet. På grund af gevindstangens ændring i moment vil affyringshastigheden, ændre sig for meget til at kunne antages som konstant, og derfor kan kasteparablen ikke anvendes rent praktisk på katapulten.
26 24 KAPITEL 2. KATAPULT 2.5 Støj Støj bliver ofte et problem i kredsløb hvor der indgår høj- og lav-impedante enheder. Den væsentligste støjkilde i hardware opstillingen, kommer fra de 4 høj-impedante DC-motorer. Idet der skal registres signaler fra kontakter og en omgangstæller er det vigtigt at disse ikke er påvirket af støj, da signalet, ved for store udsving, vil kunne registreres forkert. Et signal der ledes igennem en spole, eller er tilsluttet en kondensator før ground, vil give en mindre dæmpning af et lav-frekvens signal end på et høj-frekvens signal. Derfor bliver dette kaldt et lav-pass filter. Det modsatte er gældende for et høj-pass filter. Der gives en mindre dæmpning af et høj-frekvens signal end på et lav-frekvens signal. I vores opbygning af H-broer er der tilsluttet to kondensatorer før ground (se figur 2.12). Der anvendes dermed lav-pass filtre i opstillingen. På denne måde frafiltreres den høj-impedante som kommer fra motorerne. Figur 2.12: Diagram over opsætning af H-broerne med lav-pass filtre [8].
27 Kapitel 3 Microcontroller 25
28 26 KAPITEL 3. MICROCONTROLLER 3.1 MSP430 Som nævnt tidligere, benyttes der i en MSP430F149 microcontroller til styring og kontrol af katapulten. MSP430 microcontroleren er en 16-bit RISC 1 CPU. Der anvendes en Von- Neumann arkitektur, hvilket vil sige at selve instruktionerne der udføres at processoren, samt de data den arbejder på, opbevares i den samme hukommelse. Principperne bag MSP430 ens opbygning kan ses på figur 3.4. Figur 3.1: MSP430 diagram over dens opbygningen [3]. Da MSP430 er en microcontroller, og ikke kun en microprocessor, indeholder den ekstra in- og output-muligheder der gør det let at interagere med ekstern elektronik. En liste over nogle af de forskellige features der er tilgængelige ses nedenfor: JTAG til overføring af nyt firmware/programkode, samt debugging. USART for let implementering af serielle kommunikationsprotokoller. (RS232, osv.) Digitale I/O ben for tilkobling af eksterne digitale enheder. (Nogle med interrupt-muligheder.) 12-bit ADC Analog-to-digital converter. To indbyggede timere (Timer A og Timer B) med valgfrie clock-kilder. Kan f.eks. anvendes til implementering af PWM signaler (se afsnit 3.9). 1 Reduced Instruction Set Computer
29 3.2. REGISTRE Registre MSP430 har i alt 15 registre, hvor nogen af disse anvendes til specielle formål som f.eks. stack pointer eller program counter. De første fire registre i MSP430, R0, R1, R2 og R4 er specielle, og har følgende funktioner: R0: Program Counter R1: Stack Pointer R2: Status Register R3: Constant Generator De resterende registre, R4-R15 er general purpose, og kan således til hvad end man lyster. Program Counter registeret er det register der holder styr på adressen i hukommelsen hvor CPU en på et givent tidspunkt er ved at eksekvere. Stack Pointeren peger på programmets stack, og Constant Generator-registeret anvendes i instruktioner der arbejder med konstante værdier, f.eks. en CMP instruktion der sammenligner værdien af et register med 0 eller en anden konstant værdi. Det eneste register der er interessant fra vores synspunkt er Status Registeret, da vores programkode er skrevet i C, og derfor ikke har haft brug for at røre ved de resterende registre. Status registeret (se figur 3.2) indeholder diverse status bits for aritmetiske instruktioner som f.eks. ADD og SUB. Disse er N, Z, C og V, som er hhv. negativ-, zero-, carry- og overflow-bittene. Det er også muligt at slukke for nogle systemclocks (se næste afsnit 3.3 for mere information vedr. clocks) via registrene SCG0 og SGC1 og OSCOFF. Derudover er det også muligt at slukke for CPU en via CPUOFF-bittet. Det eneste register der eksplicit anvendes i vores software er GIE, Global Interrupt Enable, der slår interrupts til. Figur 3.2: Status registeret på MSP430 [4].
30 28 KAPITEL 3. MICROCONTROLLER 3.3 Clocks MSP430 indeholder et modul kaldet Basic Clock Module. Basic Clock modulet indeholder tre forskellige clock kilder: LFXT1CLK: en lavfrekvent 32,768 KHz oscillator. XT2CLK: En valgfri højfrekvent oscillator. DCOCLK: Intern digitalt kontrolleret oscillator med RC-karakteristik. Kører som standard omkring 800KHz. Selve Basic Clock modulet eksporterer tre clock signaler: ACLK: Auxillary clock. Kører altid med LFXT1CLK kilden. Kan køres med en divider på 1, 2, 4 eller 8. MCLK: Master clock. Master clocken er den clock der leverer clocksignal til bl.a. CPU en og system. Kan benytte alle ovenstående clock-kilder med dividerne 1, 2, 4 eller 8. til alle de ovenstående clock-kilder. SMCLK: Sub-master clock. Anvendt som clock til devices som f.eks. timere og USART. SMCLK har en divider på 1, 2, 4 eller 8. I projektet drives både MCLK og SMCLK af DCO clock-kilden. DCO clockfrekvensen er ikke ændret fra standardværdien, som er på omkring 800KHz. 3.4 Digital I/O MSP430 har i alt 64 ben, hvoraf de 48 kan konfigureres til I/O ben. Mange af disse har også andre funktioner som f.eks. timere, men kan indstilles som værende udelukkende I/O ben via et register. De 48 I/O ben er inddelt i 6 porte kaldet P1 P6. Hver enkelt port styres via et byte langt port-register [4]. På figur 3.3 kan en oversigt over portene og portenes placering på MSP en ses.
31 3.4. DIGITAL I/O 29 Figur 3.3: Oversigt over portene på MSP430F149 [3]. En oversigt over de porte der anvendes i katapult-projektet kan findes bagerst i bilag A Konfiguration af digital I/O Som nævnt kan de 48 ben kan enten vælges som digitale I/O ben eller den indbyggede funktion (f.eks. timere, ADC etc.). Det overordnede register der styrer dette kaldes PxSEL, der findes et af disse registre til hver port. Hvis et bit er sat højt, vil dette ben opføre sig efter den indbyggede funktion, som kan findes i databladet. Ligeledes vil et bit være et digitalt I/O ben, når dette bit er sat lavt. Skemaerne (figur 3.4 og figur 3.5) viser de registre der er tilkoblet de forskellige I/O porte. Portene P1 og P2 adskiller sig fra de andre registre ved at de har interrupt-egenskaber. Samtlige porte indeholder udover PxSEL (der bestemmer om en given port er et I/O ben), registrene PxIN, PxOUT og PxDIR. Derudover indeholder de to registre med interrupt-muligheder også registrene PxIE, PxIFG og PxIES der anvendes til konfiguration af interrupts [4].
32 30 KAPITEL 3. MICROCONTROLLER Figur 3.4: Oversigt over P1 og P2 registrene [4]. Figur 3.5: Oversigt over P3-P6 registrene [4] Anvendelse af digitale I/O porte Hver port har et PxDIR register. Dette register vælger retningen af I/O benet dvs. om benet skal være et input ben, eller et output ben. Benet sættes som output, hvis det tilsvarende bit i registret er sat højt, mens benet sættes som input, hvis det tilsvarende bit er lavt. Sættes et ben på en specifik port som et input ben, anvendes PxIN registret til at udlæse dette bens værdi. PxIN er kun et læsbart registrer, og det er ikke muligt at ændret dens værdi. Sættes et ben som output, styres benets værdi via registret PxOUT. PxOUT registret fungerer på samme måde som PxIN, bortset fra at man her selv sætter værdien, i stedet for at aflæse den. Signalerne på de digitale output ben afhænger af MSP430-controllerens forsyningsspænding. I dette projekt anvender en forsyning på 3,3 V, hvilket vil sige at MSP430 output benene giver 3,3 V output, og ligeledes forventer inputs på 3,3 V Anvendelse af interrupts på digitale I/O ben De to porte, P1 og P2, kan anvendes sammen med interrupts. Dette betyder at microcontrolleren kan interrupte kørende programkode, når der sker en ændring på et input ben. For at slå interrupt-funktionen til på et input ben, benyttes registret PxIE. Hvert bit i dette register svarer til et ben på den pågældende port. Når interrupts
33 3.4. DIGITAL I/O 31 er slået til, vil en ændring på et I/O få processoren til at hoppe til en bestemt adresse i koden (en såkaldt Interrupt Service Routine). Omstændighederne for ændringen af et bens værdi er det også muligt at konfigurere. Dette gøres via registret PxIES, som gør det muligt at vælge hvor vidt man vil have et interrupt når et signal går fra at være lavt til højt, eller omvendt.
34 32 KAPITEL 3. MICROCONTROLLER 3.5 Analog/Digital Converter En 12-bit analog til digital converter (ADC12) opererer ved at konvertere et analogt signal til dets repræsentative 12-bit digitale signal, som derefter gemmes i en konverteringshukommelse som kan aflæses efter behov Virkemåde ADC12 modulet som anvendes, har i sig også en integreret referencespænding. Den interne referencespænding kan enten sættes til 1,5 V eller 2,5 V og ellers er der mulighed for at sætte en ekstern reference til MSP en. For at bruge den interne referencespænding, skal REFON sættes til højt i ADC12 Kontrolregisteret (ADC12CTLx), ligesom det skal vælges hvilken referencespænding der skal bruges ved at sætte REF2_5V højt eller lavt for hhv. 2,5 V og 1,5 V. Dette bit sættes også i ADC12CTLx registeret [4]. Det er også muligt at konfigurere ADC en til at benytte en ekstern referencespænding. De to software-konfigurable ben (V R+ og V R ) kan sættes til forskellige ben på microcontrolleren, og dermed kan man sætte sin egen referencespænding hvis man ønsker at opnå en bedre udnyttelse af opløsningen end hvad de to standard referencer giver mulighed for. På MSP en findes der både et V ref+ og Ve ref+ ben (hhv. 7 og 10), mens V ref og Ve ref er samlet i det samme ben, 11. Forskellen er V ref er den interne reference, som kan måles, mens Ve ref står for den eksterne reference, hvor man selv beslutter referencen. I projektet anvendes der en ekstern reference spænding på 2,6 V. Den anvendte afstandsmåler kan maksimalt levere et output på 2,6 V, hvilket gør det logisk at bruge en ekstern reference på dette. Der er i dette projekt valgt benene V ref og Ve ref, som reference ben til ADC en. Men det er gennem ADC12 Conversion Memory kontrol registreret (ADC12MCTLx) på MSP en muligt at bestemme hvilken reference der bruges. De tre bits SREF kan sættes og ud fra dette kan der vælges hvilke ben der bruges. Det er således også muligt at vælge forsyningsspændingen til MSP en som reference, som det kan ses på figur 3.6.
35 3.5. ANALOG/DIGITAL CONVERTER 33 Figur 3.6: Oversigt over hvilke reference ben der kan sættes til ADC12 på MSP430 [4]. De 12-bit som ADC en kan gengive den analoge værdi i, giver rent teoretisk mulighed for at opdele spændingsintervallet i 4096 stykker og få en præcision på 0,0006V. Den formel der anvendes for konvertering fra den analoge spænding til den digitale 12-bits værdi kan ses nedenfor Konfiguration N ADC = 4095 V in V R V R+ V R I det følgende forklares opbygningen af referencespændingen på MSP en, samt hvilken reference der bliver brugt. Input kanalen og de to software-konfigurable ben bliver defineret i kontrolregistrene for enheden. ADC en er konfigureret vha. to kontrolregistre, ADC12CTL0 og ADC12CTL1, og aktiveres vha. ADC12ON bittet i ADC12CTL0. ADC12 en kan også deaktiveres, dette kan gøres for at spare strøm. Desuden skal det nævnes at ADC12 ens kontrol-bits kun kan ændres når ENC = 0, og for at der kan ske en konvertering skal ENC = 1. Dette bit sættes i ADC12CTL0 ADC12 har fire forskellige konverteringsmetoder, jvf. figur 3.1. Disse vælges på baggrund af hvordan CONSEQx bittet er sat. CONSEQx Mode Operation 00 Single channel singleconversion Et enkelt signal som konverteres en gang. 01 Sequence-of-channels En sekvens af signaler som konverteres en gang. 10 Repeat-single-channel Et enkelt signal som bliver konvereteret gentagne gange. 11 Repeat-sequence-ofchannels En sekvens af signaler som bliver konvereteret gentagne gange. Tabel 3.1: Tabel over konverteringsmetoder på ADC en [4]. I projektet bruges konverteringensmodellen kaldet Single channel singleconversion. Grunden til at denne konverteringsmodel benyttes skyldes at det opfylder kravene til projektet [4].
36 34 KAPITEL 3. MICROCONTROLLER Kode Herunder ses vores kode til styring af ADC12-enheden i MSP430. Som tidligere nævnt anvendes konverteringsmodellen Single Channel, Single Conversion hvilket gør implementationen let. Der anvendes en initialiserings-funktion, distance_init(), der opsætter ADC en vha. de i det foregående afsnit beskrevne principper. Derudover er der implementeret en distance_get()-funktion der foretager en måling på ADC en og returnerer en 12-bits digital værdi konverteret fra vores afstandsmålers analoge signal. 1 / 2 d i s t a n c e. c Distance sensor and ADC12 c o n t r o l. 3 / 4 5 #include <MSP430x14x. h> 6 #include " rs232. h " 7 #include " pan. h " 8 #include " launch. h " 9 #include " d i s t a n c e. h " / 12 I n i t i a l i z e d i s t a n c e module. 13 / 14 void d i s t a n c e _ i n i t ( void ) 15 { 16 P6SEL = 0x01 ; // P6. 0 ADC option s e l e c t 17 ADC12CTL0 = SHT0_2 + ADC12ON; // Set sampling time, turn on ADC12 18 ADC12CTL1 = SHP; // Use sampling timer 19 ADC12IE = 0x00 ; // Enable i n t e r r u p t 20 ADC12MCTL0 = SREF_2; // S e t VeRef+ and VeRef 21 ADC12CTL0 = ENC; // Conversion enabled 22 ADC12CTL0 &= ( BIT5 ^ 0xFF ) ; // Reference o f f 23 ADC12CTL0 = ADC12SC; // Sampling open 24 _BIS_SR(GIE ) ; 25 } / 28 Read v a l u e from d i s t a n c e sensor. 29 / 30 unsigned int distance_get ( void ) { 31 unsigned int val ; / S i g n a l the ADC to s t a r t sampling. / 34 ADC12CTL0 = ADC12SC; / Wait f o r completion. / 37 while (ADC12CTL1 & 0 x01 ) 38 ; 39
37 3.5. ANALOG/DIGITAL CONVERTER / Save v a l u e. / 41 val = ADC12MEM0; return val ; 44 }
38 36 KAPITEL 3. MICROCONTROLLER 3.6 Interrupts Et interrupt er et asynkront signal fra hardware eller software, som indikerer at der er behov eksekveringstid. Når der sker et interrupt kræver den opmærksomhed til det sted i koden der er fastsat (også kaldet en ISR 2, således afbrydes CPU ens igangværende programudførelse. Den igangværende programudførelse genoptages igen, når ISR en er udført. Interrupts på MSP430 slås til ved at sætte bittet GIE i status registeret SR. Derefter skal interrupts for de enkelte porte i PxIE, hvis der er tale om digital I/O, eller interrupt enable bittet i kontrolregistret for enheden Interrupt prioritet Når der er flere interrupts ønsker CPU-tid samtidigt, bliver de eksekveret efter prioritet. Fra Texas Instruments side er der på forhånd valgt prioriteter for de forskellige interrupts, som kan ses på figur 3.7. Som det kan ses har de vigtige system-interrupts højere prioritet end normale device-interrupts. Derudover er interrupt-prioriteten bestemt via interrupt-vektorens adresse i hukommelsen Diskussion Interrupts kan med fordel benyttes hvis ændringer af værdier på input kan håndteres i en interrupt service routine. Et eksempel på dette i vores projekt er knapperne der anvendes til hhv. panorering og låsemekanisme. I dette tilfælde giver det ingen mening at sidde og polle på de enkelte input ben for kontakterne og derefter udføre kode der ændrer en motors retning. I en sådan situation kan det meget bedre betale sig at anvende et interrupt, da opgaven der skal udføres er simpel. Et eksempel på et sted der anvendes polling på input ben i stedet for interrupts er i afstandsmåler-modulet. Pga. flowet i softwaren, er det meget lettere at avende en synkron aflæsning, end et asynkront interrupt. Om man skal anvende interrupts i en given situation afhænger således meget af situationen, og måden dataet fra en bestemt enhed skal anvendes i resten af softwaren. 2 Interrupt Service Routine
39 3.6. INTERRUPTS 37 Figur 3.7: Her ses de forskellige interruptvektorer samt en liste over interruptprioriteterne på MSP430 [3].
40 38 KAPITEL 3. MICROCONTROLLER Kode Da softwaren er skrevet i C, vil der her komme nogle enkelte eksempler på anvendelse af interrupt-vektorer for interrupt service routines i C. Vores kode er skrevet til både at kunne køres i Texas Instruments Code Composer compiler, og MSP-GCC. Begge disse compilere har understøttelse for at lave interrupt service routiner direkte i C-kode (i modsætning til assembler), men der benyttes forskellig syntax fra compiler til compiler. I Code Composer anvendes in-line ISR således: 1 #pragma v e c t o r=port1_vector 2 interrupt void p ort1_isr ( void ) { 3 4 / Read v a l u e o f PORT1 i nput. / 5 unsigned char v a l = P1IN ; 6 7 / Determine which pin to s e r v i c e. / 8 i f (P1IFG & 0x1 ) { 9 / P1. 0 was changed / (... ) P1IFG &= ~(0 x1 ) ; 14 } i f (P1IFG & 0x2 ) { 17 / P1. 1 was changed. / (... ) P1IFG &= ~(0 x2 ) ; 22 } 23 } I MSP-GCC erklæres funktionen lidt anderledes, ellers fungerer resten som i Code Composer: 1 #include <s i g n a l. h> / mspgcc wants the s i g n a l. h header f o r in l i n e ISRs. / 2 3 i n t e r r u p t (PORT1_VECTOR) port1_isr ( void ) { (... ) 7 8 }
41 3.6. INTERRUPTS 39 Desuden skal det nævnes at MSP430 ikke altid er god til selv at cleare interrupt flaget for alle interrupts, så vi har i alle tilfælde gjort dette manuelt.
42 40 KAPITEL 3. MICROCONTROLLER 3.7 RS232 RS232 er en simpel seriel data-bus oprindeligt beregnet til kommunikation mellem en DTE (Data Terminal Equipment) dvs. en computer eller en terminal, og en DCE (Data Communications Equipment) dvs. et modem [5]. RS232 standarden specificerer forskellige funktioner og niveauer, som f.eks. spændingsniveauer og funktionen af de forskellige ben på portene. Dog har RS232 gennem tiden også været brugt til andre ting end blot kommunikation mellem en DTE og en DCE, og i disse applikationer har man bl.a. brugt forskellige standard-specificerede ben til signalering af applikations-specifikke formål. Dermed trodsede man den egentlige specifikation, men fik yderligere funktionalitet. Dette var smart fordi RS232 og DE9-stik var vidt tilgængelige på computere, og det var derfor muligt at bygge simple udvidelser dertil. Selv om RS232 i dag kan føles gammel og forældet er det stadig yderst nyttigt, og meget simpelt at arbejde med i praksis, dette gør at det er yderst attraktivt at arbejde med til kommunikation mellem embeddede systemer under debugging eller lignende Virkemåde RS232 er anvendt til karakter-baseret kommunikation, typisk vil dette være transmission af ASCII karakterer, men det er ikke begrænset hertil. Normalt anvendes såkaldte UART er for at gøre det lettere at arbejde med RS232, og på disse kan man sætte en værdi for antal bits per karakter. For at gøre det muligt at modtage data asynkront fra den modsatte ende af kommunikationen, gør RS232 brug af start og stop bits. Denne teknik kaldes framing. Framing sker for hver enkel karakter der afsendes fra UART en. For at dekode en karakter fra signalerne der kommer efter et start-bit i en frame anvendes en forudbestemt timing kaldet baud raten. Baud raten bestemmer hvor tit modtageren skal sample signalet for dermed at bestemme en specifik bit-værdi. Ud over de to start- og stopbits fra framingen, bruger man også ofte endnu et ekstra bit for at forhindre data korruption, det såkaldte paritets-bit. Når paritet er slået til, vil paritets-bittet fremgå umiddelbart efter alle databits er blevet transmitteret, men før stop-bittet. Typisk anvendes to forskellige metoder til paritetstjeks, odd eller even paritet. De fungerer på den måde at antallet af logiske 1-bits i de transmitterede databits optælles. Køres der med odd parity
43 3.7. RS sættes paritetsbittet til logisk 1 hvis antallet er ulige, ellers 0. Ligeledes sættes paritetsbittet højt hvis antallet er lige, når der køres med even parity. RS232 bruger desuden lidt atypiske spændingsniveauer. Dette er gjort for at bekæmpe støj. Et logisk 0 i RS232 er en spænding mellem +3 V og +15 V. Et logisk 1 er en spænding mellem 3 V og 15 V USART En Universial Asynchronous Receiver/Transmitter (UART) eller Universial Synchronous/Asynchronous Reciever/Transmitter (USART) er det stykke hardware der benyttes til at kommunikere over en RS232-linje. Vi vil ikke gå i dybden med at forklarer hvordan en USART fungerer, men vil kun forklare det overfladisk. USART en laver alt det hårde arbejde beskrevet tidligere i kapitlet, og abstraherer stort set alt viden om den underliggende protokol væk. På MSP430 fungerer det på den måde, at man skriver til et output register for at sende en byte af sted, og læser fra et input register når man vil låse et sendt byte. Det er ligeledes muligt at anvende interfact til USART en via interrupts, så man kan modtage en IRQ når der er modtaget en ny byte, og når en ny byte bør sendes Kode Kode til styring af RS232 og USART kan findes på den medfølgende CD-ROM i mappen code/rs232.c.
44 42 KAPITEL 3. MICROCONTROLLER 3.8 Timer MSP430 indeholder to timere kaldet timer A og timer B [4]. Både timer A og B er asynkrone 16bit timere/tællere med: 4 indbyggede operationstilstande. Valgfrie og justerbare clock frekvenser. 3 justerbare capture/compare registre. Konfigurable outputs med mulighed for PWM. Asynkront input og output latching. Interrupt vector funktion for hurtig behandling af Timer A/B interrupts bit tæller/timer for timer A 16-bit tælle registret, TAR, fungerer på den måde at den afhængigt af operationstilstand vil enten inkrementere eller dekrementere sin værdi på hver stigende flanke på clocksignalet. TAR registret kan ved hjælp af software både skrives til og læses fra, ydermere kan timeren kan sættes til at generere at interrupt når der forekommer overflow i dette register. TAR registret kan også tømmes ved at sætte TACLR bittet. Dette sletter dog også clock divideren og count-retningen for op/ned mode Timer modes Timer A og B i MSP430 har 4 forskellige tilstande som vist på 3.8, up, up/down, stop og continuous. Hvilken af disse tilstande der vælges, bestemmes af MCx bittet. Figur 3.8: Timer modes på MSP430 [4]. Up-mode benyttes hvis timerperioden altid skal være forskellig fra 0FFFFh optællinger. Timeren vil gentage sig selv ved at tælle op til den i compare-registret,
45 3.8. TIMER 43 TxCCR0, angivne værdi hvilket definerer perioden som vist på Antallet af optællinger i perioden er TxCCR0 + 1, da den tæller op til TxCCR0 og derefter starter forfra fra 0 igen. Vælger man up-mode mens værdien er større end compareregistret vil timeren genstarte med det samme. TxCCR0 CCIFG interruptflaget bliver sat når timeren tæller fra TxCCR0 værdien. TxIFG interrupt flaget bliver sat når timeren tæller fra TxCCR0 til nul [4]. Figur 3.9: Up mode på Timer A og B.[4]. Continuous-mode får timeren til at tælle op til 0FFFFh, og genstarte fra 0. I denne mode virker Capture/compare registret TxCCR0 på samme måde som de andre capture/compare registre. Interruptflaget bliver sat når tælleren går fra 0FFFFh til 0 [4]. Figur 3.10: Continuous mode på Timer A og B [4]. Up/down-mode benyttes hvis optællinger timer perioden skal være forskellig fra 0FFFFh, og man har behov for en symmetrisk puls generering. Timeren tæller op til den i TxCCR0 registret angivne værdi, og derefter ned til 0 igen som vist på Perioden er det dobbelte af værdien angivet i TxCCR0 registret. Tællerretningen bliver husket, sådan at det er muligt at starte tælleren i samme retning som den talte da den blev stoppet. Hvis man ikke ønsker at gemme dette skal man slette TxCLR bittet, TxCLR bittet sletter også TxR værdien og TxCLK divideren.
46 44 KAPITEL 3. MICROCONTROLLER I up/down mode, bliver TxCCR0 CCIFG interrupt flaget og TxIFG interrupt flaget kun sat en gang hver periode, separeret af den halve timer periode. TxCCR0 CCIFG interrupt flaget bliver sat når timeren tæller fra TxCCR0+1 til TxCCR0, and TxIFG bliver sat når timeren fuldender nedtællingen fra 0001h til 0000h. Figur 3.11: Up/down-mode på Timer A og B [4] Anvendelse i software I softwaren anvendes både Timer A og Timer B. Timer A anvendes som en generel timer hvortil man kan registrere rutiner, man ønsker skal kaldes med jævne mellemrum. Timer B anvendes som PWM timer. Herunder forklares lidt om konfigurationen af den generelle timer. Konfiguration af PWM timeren kan findes i næste afsnit. Den generelle timer der benyttes i softwaren kører med SMCLK (som er DCO en i vores tilfælde). Den kører med en frekvens på 800 KHz og en divider på 8, hvilet bringer os ned på 100 KHz. Der køres i continuous mode og der reageres kun over overflows. I det tælle-registeret kun er 16-bit langt vil den overflowe efter efter timer ticks, hvilket vil sige at et overflow vil ske efter: 65536/ = sekunder Selve koden for den periodiske-timer kan findes i filen code/timer.c på den vedlagte CD-ROM.
47 3.9. PWM PWM PWM [1] eller Pulse With Modulation, på dansk kaldet pulsbredde-modulation, er den metode der benyttes til at lave individuel hastighed på de enkelte motorer PWM teori PWM fungerer ved at man i stedet for et konstant højt signal, sender et firkantsignal med ændret høj/lav tid, også kaldet modulation af duty cycle. Ved at modulere duty cycle til eksempelvis 50% høj og 50% lavt, kan man ændre output på en H-bro fra eksempelvis 9 V forsyningsspænding til 4,5 V (se figur 3.12) uden at bekymre sig om at de to H-broer i et L-298 komponent normalvis kører med samme spænding. Dette kan det beskrives som en kontakt der bliver tændt og slukket meget hurtigt. Figur 3.12: Eksempler på PWM signaler [1] PWM på MSP430 Som nævnt i forrige afsnit (3.8), anvendes Timer B til at generere det PWM signal der benyttes til låsemotoren. Timer B benyttes som tidligere forklaret i up-down mode. Eksemplet nedenfor er et uddrag af PWM koden, der er en del af affyringsmodulet. Hele koden kan findes på den vedlagte CD-ROM i filen code/launch.c. 1 P4SEL = PWM_SIGNAL1 + PWM_SIGNAL2; // P4. 1 and P4. 2 Timer B 1/2 o p t i o n s 2 P4DIR = PWM_SIGNAL1 + PWM_SIGNAL2; // P4. 1 and P4. 2 output 3 TBCCR0 = 128; // PWM Period /2 4 TBCCTL1 = OUTMOD_6; // CCR1 t o g g l e / s e t 5 TBCCR1 = 4 0 ; // CCR1 PWM duty c y c l e (Low p eriod ) 6 TBCCTL2 = OUTMOD_6; // CCR2 t o g g l e / s e t 7 TBCCR2 = 0 ; // CCR2 PWM duty c y c l e 8 TBCTL = TBSSEL_2 + MC_3; // SMCLK, up down mode
48 46 KAPITEL 3. MICROCONTROLLER Timeren sættes op til at køre med toggle/set, der toggler værdien på timerens output register. TBCCR0 registeret er timerens maksimum (dvs. en halv PWM periode), og TBCCR1 sætter et toggle-punkt, hvori firkant signalet toggles mellem høj og lav. Da der køres i up/down mode, kan der på denne måde genereres et PWM signal, som set på figur Figur 3.13: Anvendelse af PWM på Timer B. På billedet ses eksempler på værdier af de to Capture/Compare registre CCR0 og CCR1.
49 Kapitel 4 Software design 47
50 48 KAPITEL 4. SOFTWARE DESIGN 4.1 Stadier I det følgende vil der blive forklaret de forskellige stadier katapulten kan befinde sig i. Først forklares hele katapulten overordnet, og derefter de underordnede stadier. Den nedenstående figur 4.1 viser et overblik hvordan selve systemet fungerer og hvilke overordnede stadier systemet kan være i. Overordnet sker der en initialisering, når katapulten startes. Efter initialiseringen går systemet over i et reset stadie, der sikrer at alle motorer er sat op og klar. Herefter sættes målsøgningen i gang. Målsøgningen vil fortsætte uendeligt indtil afstandsmåleren opfanger et mål, hvorefter systemet går over i affyringsstadiet. Her vil selve affyringen ske, hvorefter systemet vil gå tilbage i reset stadiet, og således kører rundt i en løkke. De forskellige stadier vil blive beskrevet mere detaljeret nedenfor. Figur 4.1: State diagram over software for katapulten Initialisering Det første katapulten gør er at initialisere. Her sættes lock-motoren i unlock stadie, hvilket vil sige at den står klar til at låse når dens funktion bliver kaldt. Udover dette sættes affyringsmotoren klar, så den fastspændte snor er spændt helt ud og klar til at blive spændt. Ydermere sættes panoreringsmotoren og ammunitionsmotoren klar til at gå i gang, når målsøgningsstadiet nås. Udover de fire motorer sættes kontakterne også klar og i det rigtige stadie Reset Når katapulten har initialiseret alle motorerne og kontakter er den også gået igennem reset stadiet, se figur 4.2. Dette stadie vil sætte alle motorerne og kontakter til start position og nulstille alle variabler til deres startværdier. Figur 4.2: State diagram over reset state Målsøgning Efter initialisering og reset, begynder katapulten at søge efter mål. Her starter panoreringen i en retning og ligeledes startes afstandsmåleren. Opfanger afstands-
51 4.1. STADIER 49 måleren et mål indenfor cm., vil panoreringen stoppe, outputtet fra afstandsmåleren vil blive gemt, panoreringsretningen vil blive gemt og systemet vil fortsætte til næste stadie. Panoreringsretningen gemmes, således panoreringen kan fortsætte samme retning efter en affyring. Hvis afstandsmåleren ikke opfanger noget, vil panoreringen fortsætte frem og tilbage i 180 uendeligt. Situationen kan ses på figur 4.3. Figur 4.3: State diagram over målsøgnings state Affyring I affyrings stadiet, se figur 4.4, hentes afstandsmålerens output. Herefter bliver skeen sænket ved at snoren strammes. Når skeen er spændt helt ned holder låse motoren den på plads, på den måde kan snoren frigøres til affyring. Frigivelsen bliver udregnet udfra den gemte afstandsmåler værdi, og i forhold til det gemte antal ticks. Efter snoren er løsnet fjernes låsen og et skud affyres. Når der er blevet affyret et skud vil katapulten gå tilbage til reset stadiet. Figur 4.4: State diagram over affyrings state.
52 50 KAPITEL 4. SOFTWARE DESIGN 4.2 Moduler Pojektets software er opbygget i moduler. Opbygning med moduler gør det muligt at teste de enkelte komponenter hver for sig, og gør det muligt at fordele kodningsarbejdet ud på forskellige personer. Det vil sige at grænsefladen til de forskellige moduler er bestemt på forhånd, hvilket giver mulighed for flere forskellige implementeringsmuligheder så længe specifikationer for de forskellige moduler er overholdt. Nedenfor gennemgås software modulerne, deres grænseflader samt beskrivelse af funktionernes formål. Til sidst beskrives hovedprogrammet main.c Interrupt-modulet Interrupt-modulet benyttes kun til at slå interrupts fra med. Filer: interrupt.h Afhængigheder: Ingen. void enable_interrupts() Slå interrupts til på CPU en Watchdog-modulet Da watchdog hardwaren i MSP430 ikke skal anvendes, bruges watchdog modulet til at slå denne funktionalitet fra. Filer: watchdog.c, watchdog.h. Afhængigheder: Ingen. void watchdog_stop() Stop watchdog timeren Panorerings-modulet Panoreringsmodulet står for styring af panoreringsmotoren samt kontakterne til bestemmelse af retningsskifte.
53 4.2. MODULER 51 Filer: pan.c og pan.h. Afhængigheder: Ingen. PAN_DIRECTION_LEFT Retningskonstant (venstre) PAN_DIRECTION_RIGHT Retningskonstant (højre) void pan_init() Initialiserer panoreringsmodulet. void pan_turn_left() Drej til venstre. void pan_turn_right() Drej til højre. void pan_turn_dir(int dir) Drej til en bestemt side. Bestemt via en retningskonstant (PAN_DIRECTION_*). bool pan_is_running() Returnerer hvor vidt en panorering er i gang. int pan_stop() Stopper panorering. Returnerer den retning der panoreres, inden der stoppes Afstandsmåler-modulet Afstandsmodulet bearbejder de output fra afstandsmåleren via MSP430s indbyggede 12 bits AD converter. Filer: distance.c, distance.h. Afhængigheder: Ingen. void distance_init() Initialiserer afstandsmåler-modulet. unsigned_int_distance_get()
54 52 KAPITEL 4. SOFTWARE DESIGN Aflæs en afstand. Returnerer en ADC-værdi Timer-modulet Timer-modulet tillader brugeren at registrere en funktion som skal kaldes efter et bestemt tidsinterval. Tidsintervallet er ikke konfigurerbart, men er fastlagt ved initialisering. Timer-modulet kan således ikke bruges til præcis timing, men derimod til at få kaldt en funktion (til f.eks. status-tjek) med jævne mellemrum. Timer-modulet benyttes til at bestemme om ladefunktionen har nået en låst tilstand. Filer: timer.c, timer.h. Afhængigheder: Ingen. void timer_init() Initialiserer timer-modulet. int timer_call_regularly(timerfunc_t_func, void *udata) Registrerer en callback-funktion der skal kaldes med jævne mellemrum. Denne funktion har prototypen: bool_function(void *) Pointeren udata opbevares og passeres til callback-funktionen når den bliver kaldt. Returnerer en callback-funktionen false, fjernes den fra kalds-listen, returnerer den true vil den stadig blive ved med at kaldes. Funktionen returnerer et heltals-id, der kan bruges til at fjerne den manuelt (uden at returnere false i callback-funktionen), vha. timer_remove() RS232-modulet RS232-modulet bruges primært til debugging samt statusindikation. Modulet eksporterer en printf() funktion der udskriver via serielporten. Filer: rs232.c, rs232.h.
55 4.2. MODULER 53 Afhængigheder: Ingen. void rs232_init() Initialiserer RS232. void rs232_putchar(char x) Udskriver en enkelt karakter igennem RS232. void rs232_printf(char *fmt,... ) Formaterer en tekststreng som printf(), og udkskriver denne via rs232_putchar() Affyrings-modulet Affyrings-modulet står for selve affyringen og benytter sig bl.a. af timer modulet. Modulet styrer affyringsmotoren og låse motoren. Filer: launch.c, launch.h. Afhængigheder: Timer-modulet. void launch_init() Initialiserer affyrings-modulet. (Alle motorer der benyttes under affyring) void fire_init() Initialiserer affyrings-motoren. bool fire_is_running() Returnerer true eller false alt efter om katapulten er i gang med en affyring. void fire_shoot(int percent) Starter en affyring. Løsner skeen percent procent. void fire_motor_down() Kører affyrings-motoren ned. void fire_motor_up() Kører affyrings-motoren op. void fire_motor_stop() Stopper affyrings-motoren.
56 54 KAPITEL 4. SOFTWARE DESIGN void fire_motor_freerun() Sætter affyrings-motoren i free motor run. void load_init() Initialiserer load-motoren. (Anvendes ikke, da der ikke er implementeret en automatisk lade-funktion) void lock_init() Initialiserer låse-motore. void lock_turn_left() Kør låse-motoren mod venstre. void lock_turn_right() Kør låse-motoren mod højre Hovedprogrammet main.c I main.c intialiseres de forskellige moduler og det er her katapult-logikken er implementeret. Programmet kan findes på CD en, og har filnavnet code/main.c. Initialiserings-processen kan ses på nedenstående figur, 4.5, og anvender initialiserings-funktioner fra alle modulerne beskrevet i det tidligere afsnit her i kapitlet. Når alle moduler er blevet initialiserede, hopper programmet over i et main-loop (se figur 4.6. Det er heri koden for selve afstandsbestemmelsen, der sætter en affyring i gang når der er fundet et mål, kan findes. Figur 4.5: Flowchart over initialisering af software.
57 4.2. MODULER 55 Figur 4.6: Flowchart over main-loopet i vores katapult-software.
58 56 KAPITEL 4. SOFTWARE DESIGN
59 Kapitel 5 Test & Konklusion 57
60 58 KAPITEL 5. TEST & KONKLUSION 5.1 Indledning I dette afsnit er der fokuseret på tests af de samlede moduler, dette vil sige at det testes at softwaren til de enkelte moduler kan styre den tiltænkte hardware.
61 5.2. MSP MSP 430 Formålet med denne test er at sikre at microcontrolleren virker, så der i projektet er et stabilt udgangspunkt for en funktionel kode Testspecifikation Microcontrolleren er testet for at sikre os at alle in/output ben virker: Sætte alle ben høje, og måle om der står 3,3 V på dem. Sætte alle ben lave og måle om der står 0 V på dem. Testkoden for denne test kan findes på den vedlagte CD under /code/testport.c Resultat Testen viste at microcontrolleren fungerede, som den skulle. Alle ben der kunne sættes hhv. høj eller lav, gjorde dette. Test Alle ben sat højt Alle ben sat lavt Resultat Fungerer fint Fungerer fint Konklusion Tabel 5.1: Resultater af test med microcontrolleren Dette modul virker som det er beskrevet i testspecifikationen. Dog viste det sig at være nødvendigt eksplicit at sætte alle ben på microcontrolleren, da værdien ved opstart ikke er defineret.
62 60 KAPITEL 5. TEST & KONKLUSION 5.3 Afstandsmåler Formålet med denne test var at finde eventuelle fejl i afstandsmåleren i forhold til databladet, således der ikke satses blind på databladet. Grafen kan bruges til at bestemme katapultens afstand til et objekt, ved at udlæse ADC-tallet, og se på grafen hvor det ligger. Det er også disse ADC-tal der benyttes i koden til at bestemme hvor meget kraft katapulten skal affyre med Testspecifikation Afstandsmåleren er testet ved: at være monteret statisk. Ud fra dette er der afmålt 0-85 cm med 5 cm interval afmærkning. Efter hver 5 cm er der blevet indsat et objekt for at kunne aflæse ADC-tallet. Ved hver position er der taget ca. 5 sekunders målinger. Herfra er gennemsnittet ved hver position taget, for at få det endelige tal. Målingerne kan findes på den vedlagte CD-ROM under /test/afstand-test Resultat Resultatet af disse tests er plottet i den nedenstående figur 5.1. Figur 5.1: Output målinger fra afstandsmåleren med 5 cm interval i ADC-tal Konklusion Hvis man sammenligner vores test med databladets graf, se figur 5.2, kan man se at de stemmer meget overens. Graferne har hver deres enhed på den lodrette akse.
63 5.3. AFSTANDSMÅLER 61 Dette har ingen betydningen da volt og ADC-tallet er proportional og kan dermed sammenlignes. Der er et udsving i testgrafen ved omkring 45 cm. Dette er blevet taget med i udregningen af afstanden fra robotten. Ligeledes stemmer graferne fra 0-9 cm heller ikke overens. Dette er ikke af betydning for dette projekt, da kravet for afstanden til målet er mellem 30 og 80 cm. Figur 5.2: Sammenligning af databladetsgraf og test grafen
64 62 KAPITEL 5. TEST & KONKLUSION 5.4 Panoreringsmotor Formålet med denne test er at sikre at panoreringsmotoren kan nå yderpunkterne uden at ledningerne hæmmer katapulten. Desuden skal det sikres at katapulten er i stand til at reagere og stoppe foran et givent mål Testspecifikation Panoreringsmotoren er testet ved: Lade katapulten panorere til højre, se at den vender når den rammer kontakten og sikre at den kan gøre dette ubesværet. Lade katapulten panorere til venstre, se at den vender når den rammer kontakten og sikre at den kan gøre dette ubesværet. Sætte motoren i lockstop mens katapulten panorerer, for at sikre at den kan stoppe ud for et mål Resultatet Resultatet fra testen kan ses nedenunder. Test Panorering til højre Panorering til venstre Stop foran mål Resultat Fungerer fint Fungerer fint Fungerer fint Tabel 5.2: Resultater af test med panoreringsmotor Katapulten panorerer ca. 180, men har problemer med at nå helt ud til yderpunkterne, samtidig med at farten falder for panoreringen, pga. de mange ledninger omkring katapulten. Den skifter automatisk retning når den når et yderpunkt, og kører tilbage. Når katapulten finder et mål går panoreringsmotoren i locked stop, hvilket gør at den stopper foran mål Konklusion Det kan konkluderes at selve panoreringen fungere fint. Grunden til at den ikke altid kan nå helt ud til yderpunkterne skyldes dårligt design af katapulten, der gør at ledningerne trækkes med og giver panoreringen modstand. Katapulten stopper også foran målet, men har nogle gange en lidt langsom reaktionstid. Dette kan skyldes at panoreringsmotoren kører på 9 V, og dermed er for hurtigt til at reagere på det.
65 5.4. PANORERINGSMOTOR 63 På trods af de små fejl, vurderes det at panoreringen lever op til krav- og testspecifikationerne.
66 64 KAPITEL 5. TEST & KONKLUSION 5.5 Låsemotor Formålet med denne test er at finde ud af om konstruktionen af låsemotoren er holdbar, i forbindelse med opbygning af moment i katapulten Testspecifikation Låsemotoren er testet på følgende på følgende punkter: Køre låsen til højre og se at den stopper når den rammer kontakten. Køre låsen til venstre og se at den stopper når den rammer kontakten. Sænke skeen, slå låsen til og se at den holder skeen, samtidigt med at motoren stopper når låsen rammer kontakten. Slå låsen fra mens den holder skeen, samtidigt med at motoren stopper når låsen rammer kontakten Resultater Resultatet fra testen med låsemotoren kan ses nedenunder. Test Lås til højre Lås til venstre Låse skeen Løsne skeen Resultat Fungerer fint Fungerer fint Fungerer fint Fungerer fint Tabel 5.3: Resultater af test med låsemotor Låsen slår frit og ubesværet til og fra, og motoren stopper når låsen når yderpunkterne. Låsen kan holde skeen nede, og har kræfterne til at slå fra mens den holder skeen Konklusion Eftersom låsemotoren virker som det er beskrevet i krav- og testspecifikationen, er dette en holdbar løsning til at opbygge moment ved hjælp af denne lås.
67 5.6. AFFYRINGSMOTOR Affyringsmotor Formålet med denne test er at sikre at affyringsmotoren er stærk nok til at trække skeen ned, da dette er nødvendigt for en affyring Testspecifikation Affyringsmotoren er testet på følgende punkter: Trække skeen helt i bund. Trække skeen ned og sætte motoren i lockstop. Se efter at gevindstangen, kan holde til det moment der oplagres i den. Den første test sættes affyringsmotoren til at trække skeen ned, for at se om dette er muligt. Den næste test trækkes motoren igen ned på denne måde, men herefter sættes motoren i lockstop, for at teste om skeen kan blive holdt fast nede. Til sidst testes gevindstangen ved at køre skeen helt i bund, og herefter skal den selv køre op i free motor running. Dette gentages 10 gange, for at se hvordan gevindstangen opfører sig udfra det Resultater Resultaterne af disse test kan ses beskrevet i nedenstående tabel Test Skeen i bund Låse motoren fast Gevindstangen og moment Resultat Fungerer fint Fungerer ikke optimalt Fungerer ikke optimalt Tabel 5.4: Resultater af test med affyringsmotor Affyringsmotoren trækker som beskrevet i testspecifikation skeen ned uden problemer. Når motoren sættes i lockstop er momentet i skeen større end det motoren kan holde, og skeen bevæger sig langsomt opad. Gevindstangen ændrer sig meget under testene, og giver dermed forskellige startpositioner hver gang, dog opnås der noget stabilitet jo flere gange skeen er kørt ned og op Konklusion Dette er en fejlkilde i affyringsmotoren, at den giver sig lidt når skeen frigives. Det er en fejl, men det vurderes til at have meget lidt betydning, da det er noget der vil ske hver gang, og katapulten derfor vil opfører sig på samme måde. Test
68 66 KAPITEL 5. TEST & KONKLUSION af gevindstangen, viser tydeligt at der bliver tabt en del moment i starten. Men det virker som om at den når et stabilt punkt, hvor skeen altid returneres til samme position. Der vil dog altid være en del usikkerhed omkring stabiliteten af katapulten pga. gevindstangen. Dette modul virker ikke optimalt i forhold til kravspecifikationen. Dette er nogle ting der skal forbedres, hvis man skal være sikker på, at katapultens præcision skal være perfekt.
69 5.7. TRÆFSIKKERHED Træfsikkerhed Formålet med denne test er at sikre at katapulten, lever op til de krav for træfsikkerhed der er stillet i kravspecifikationen. Derfor laves denne test til at identificere hvor langt snoren skal løsnes, for at få den største træfsikkerhed indenfor vores forudbestemte zoner. Katapulten er ved denne test, fastsat statisk og uden panorering. Således katapulten står stille og kun skyder fremad. Figur 5.3: Illustration af katapulten og de 3 zoner Testspecifikation Katapultens træfsikkerhed er testet ved at: Affyre 5 skud for hver 5%, snoren kan løsnes fra og med 5% til og med 100%. Affyre yderligere 5 skud ved den længde løsnede snor, der har højst træfsikkerhed i de 3 zoner der ønskes at ramme. Træfsikkerhedsresultatet er taget ud fra de 10 skud, og er angivet i procent ud fra disse Resultater Resultaterne for testen kan ses nedenfor. Snor viser hvor mange procent snoren er løsnet, mens de forskellige test viser hvad der er sket. Ingen affyring betyder at ammunitionen ikke forlader skeen. Hopper betyder den hopper lige op og ned
1 Titelblad. Synopsis Denne rapport omhandler et autonomt robotsystem bygget op omkring microcontrolleren MSP430 fra Texas Instruments.
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
Læs mereArduino 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 mereDatamaters 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 mereSystem 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 mereAnalog Ø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 mereMicrocontroller, 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 mereAVR 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 mereNedenstå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 mereIndholdsfortegnelse 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 mereMicrocontroller, 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 mereArduinostyret 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 mereEnes 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 mereInterrupt - 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 mereGSM 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 mereProjekt - 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 mereJournal 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 mereMCE2040 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 mereMikrodatamatsystemer. 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 mereMichael Jokil 11-05-2012
HTX, RTG Det skrå kast Informationsteknologi B Michael Jokil 11-05-2012 Indholdsfortegnelse Indledning... 3 Teori... 3 Kravspecifikationer... 4 Design... 4 Funktionalitet... 4 Brugerflade... 4 Implementering...
Læs mereTilslutning- og programmeringseksempler
VLT MicroDrive FC 051 Indholdsfortegnelse Forord... 3 Oversigt effekt og styre kreds VLT MicroDrive... 4 Initialisering af frekvensomformeren... 5 Tilslutning af motorbeskyttelse... 6 Start/stop med analog
Læs mereDer 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 mereSPIDER 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 mereDette korte foredrag er opdelt i 3 dele: 1. ARDUINO i flere versioner, hvad er det? 2. DEMO-video 3. Din fremtidige Oscillator, SI5351A 4.
APPETITVÆKKEREN OZ6YM, Palle A. Andersen Efteråret 2017 Dette korte foredrag er opdelt i 3 dele: 1. ARDUINO i flere versioner, hvad er det? 2. DEMO-video 3. Din fremtidige Oscillator, SI5351A 4. DEMO-video
Læs mereInstruktion. MINIGAM+ On/off og analog styring IN217DKA
Instruktion MINIGAM+ On/off og analog styring IN217DKA 1. Beskrivelse af kort Advarsel! Flere dele på printkortet er forsynet med 115/230VAC. Afbryd altid strømmen før der arbejdes på aktuatoren. 2. For
Læs mereINSTALLATIONSMANUAL TIL GARAGEPORT ÅBNER GA 1000
INSTALLATIONSMANUAL TIL GARAGEPORT ÅBNER GA 1000 INSTALLATIONS MANUALEN SKAL GENNEMLÆSES OMHYGGELIG FØR IBRUGTAGNING ADVARSEL FOR SIKKER INSTALLATION Inden installation af automatikken skal balance fjederen
Læs mereAnaloge indgange og A/D konvertering. Analoge udgange
Programmering for begyndere Brug af Arduino Programmeringskursus Analoge indgange og A/D konvertering Analoge udgange Knud Krogsgaard Jensen OZ1QK Oversigt Oversigt over i aften: A/D konvertering iterations
Læs mereDansk 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 mereProgrammering 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 mereDæmpet harmonisk oscillator
FY01 Obligatorisk laboratorieøvelse Dæmpet harmonisk oscillator Hold E: Hold: D1 Jacob Christiansen Afleveringsdato: 4. april 003 Morten Olesen Andreas Lyder Indholdsfortegnelse Indholdsfortegnelse 1 Formål...3
Læs mereProgrammering C Eksamensprojekt. Lavet af Suayb Köse & Nikolaj Egholk Jakobsen
Programmering C Eksamensprojekt Lavet af Suayb Köse & Nikolaj Egholk Jakobsen Indledning Analyse Læring er en svær størrelse. Der er hele tiden fokus fra politikerne på, hvordan de danske skoleelever kan
Læs mereINSTALLATIONSMANUAL TIL GARAGEPORT ÅBNER
INSTALLATIONSMANUAL TIL GARAGEPORT ÅBNER INSTALLATIONS MANUALEN SKAL GENNEMLÆSES OMHYGGELIG FØR IBRUGTAGNING ADVARSEL FOR SIKKER INSTALLATION Inden installation af automatikken skal balance fjederen på
Læs mereDC-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 mereOpgaver - PLC - analogteknik - forbindelsesteknik...3 Opgaver - PLC - analogteknik - programmering...9
PLC - analogteknik INDHOLDSFORTEGNELSE Opgaver - PLC - analogteknik - forbindelsesteknik...3 Opgaver - PLC - analogteknik - programmering...9 2-20 Rekv. 0 Prod. 20-11-2005-21:51 Ordre 000 EFU OPGAVER -
Læs mereAlle 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 mereIndholdsfortegnelse:
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 mereBruger manual for SW 3.06
Ecco 101 VÆGTE & VEJESYSTEMER Power Tare Charge KG Max 200 Kg O T Bruger manual for SW 3.06 Nyskovvej 13 DK-6580 Vamdrup Tlf. +45 76 92 02 00 Fax +45 75 58 06 31 E-mail: scales@farmertronic.com www.farmertronic.com
Læs mereNavn: 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 mereProjekt. 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 mereDobbelt sender detektor med 4 kanals frekvenser. 1. Funktioner. 2. Produkt gennemgang
Dobbelt sender detektor med 4 kanals frekvenser Tak, fordi du har købt denne stråle detektor, læs venligst denne brugsanvisning omhyggeligt før installation. Forsøg aldrig at adskille eller reparere produktet.
Læs mereInternt 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 mereBRUGER VEJLEDNING DK 8MP wildview ir / KAMERA JK 020 / Åtelkamera 801/Albecom Justerbar 3 / 5 eller 8 mp.
BRUGER VEJLEDNING DK 8MP wildview ir / KAMERA JK 020 / Åtelkamera 801/Albecom Justerbar 3 / 5 eller 8 mp. Funktioner: 1. 5 cm TFT LCD-skærm med angivelse af optage tilstand, hukommelse på kort og batteri
Læs mereDiSEqC-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Ø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 mereSider og segmenter. dopsys 1
Sider og segmenter dopsys 1 Lokal vs global sideallokering (1) Med (a) som udgangspunkt giver (b) lokal hhv. (c) global allokering forskellige resultater dopsys 2 Lokal vs global sideallokering (2) Den
Læs mereKom godt i gang med Fable-robotten
Kom godt i gang med Fable-robotten 1. Først skal du installere programmet på din computer. Gå ind på shaperobotics.com og under support vælger du download: Her vælger du, under PC App om du kører Windows
Læs mereDigital 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 mereVedvarende energi. Sådan kommer du i gang med LEGO Energimåleren
Vedvarende energi Sådan kommer du i gang med LEGO Energimåleren de LEGO Group. 2010 The LEGO Group. 1 Indholdsfortegnelse 1. Beskrivelse af Energimåleren... 3 2. Sådan påsættes Energiakkumulatoren... 3
Læs mereProgram Dokumentation PC Software Skrevet af. Gruppen. Version 1.0
Program Dokumentation PC Software Skrevet af Gruppen. Version 1.0 Indholds fortegnelse 1. INDLEDNING...3 1.1. FORMÅL...3 1.2. REFERENCER...3 1.3. VERSIONSHISTORIE...3 1.4. DEFINITIONER...3 1.5. DOKUMENTATIONENS
Læs mereSvane Electronic Universal timer med 4 relæer og et valg af 18 funktioner hver 1. 4 kanals timer med 18 funktioner
Svane Electronic Universal timer med 4 relæer og et valg af 18 funktioner hver 1 4 kanals timer med 18 funktioner 2000.2238 Vi sikrer en høj kvalitet sammen med vores samarbejdes partnere! Vi udveksler
Læs mereEksamens spørgsmål i Teknologi (Digital) 3. Semester (i)
Eksamens spørgsmål i Teknologi (Digital) 3. Semester (i) 1. DS1821 1-WIRE KOMMUNIKATION (HERUNDER TIMING KRAV) ------------------------ 2 2. DS1821 SOFTWARE (OPBYGNING AF STYREPROGRAM I SYSTEM51 C) -----------
Læs mereLektion 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 mereExample 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 mereIndhold. 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 mereEfter 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 mereFable Kom godt i gang
Fable Kom godt i gang Opdateret: 26-03-2018 Indholdsfortegnelse 1. Først skal du installere programmet på din computer 3 2. Når programmet er installeret er du klar til at pakke robotten ud 4 3. Nu er
Læs mereVLT AutomationDrive FC300. Basis tilslutning og programmerings eksempler. VLT AutomationDrive FC300
VLT AutomationDrive FC300 Basis tilslutning og programmerings eksempler VLT AutomationDrive FC300 Indholdsfortegnelse Forord... 3 Initialisering af frekvensomformeren... 4 Tilslutning af motorbeskyttelse...6
Læs mere8. Jævn- og vekselstrømsmotorer
Grundlæggende elektroteknisk teori Side 43 8. Jævn- og vekselstrømsmotorer 8.1. Jævnstrømsmotorer 8.1.1. Motorprincippet og generatorprincippet I afsnit 5.2 blev motorprincippet gennemgået, men her repeteres
Læs mereUndervisningsbeskrivelse
Undervisningsbeskrivelse Stamoplysninger til brug ved prøver til gymnasiale uddannelser Termin maj-juni 20115 Institution KTS Vibenhus HTX Uddannelse Fag og niveau Lærer(e) Hold HTX Teknik fag Design og
Læs mere2x50 ETHERNET MODUL. RS485 slave med Ethernet-IP. Gælder for: Program nr.: AUXSLAVE v1 Dokument nr.: 0422md2x50-2v1 Dato:
Kokkedal Industripark 4 DK-2980 Kokkedal Denmark info@eilersen.com Tel +45 49 180 100 Fax +45 49 180 200 2x50 ETHERNET MODUL RS485 slave med Ethernet-IP Gælder for: Program nr.: AUXSLAVE.140422.2v1 Dokument
Læs mereSider og segmenter. dopsys 1
Sider og segmenter dopsys 1 Lokal vs global sideallokering (1) Med (a) som udgangspunkt giver (b) lokal hhv. (c) global allokering forskellige resultater dopsys 2 Lokal vs global sideallokering (2) Den
Læs mereELCANIC A/S Counter Type CNT150 Version 2.00 Inkl. PC programmet: Cnt150 Version 3.00 Betjeningsvejledning
ELCANIC A/S Counter Type CNT150 Version 2.00 Inkl. PC programmet: Cnt150 Version 3.00 Betjeningsvejledning Generelt: ELCANIC A/S COUNTER Type CNT150 er en microprocessor baseret tæller. Specielt designet
Læs mere0.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 mereDet 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 mereErgoSafe 2005. Beskrivelse af stik og indikatorer
ErgoSafe 005 Beskrivelse af stik og indikatorer Printtavlen er forsynet med en række stik og indikatorer. Denne vejledning indeholder en beskrivelse af hvert enkelt element. Den kvadratisk formede pude
Læs mereTG 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 mere1.1 Indledning. Features: Højintensitet LED-display. Fleksibel forsyning (12-45V). Kan placeres op til 100m fra controlleren.
Indhold. Indledning...3.2 Strømforsyning...4.3 Modul-interface...5.3 Modul-interface...6 2. Kommandooversigt...7 2.2 Register og flag-oversigt...8 2.3 Udlæsning til display...9 2.4 Registerbeskrivelser...
Læs mereVLT AQUA Drive FC202 PID tilslutning og programmerings eksempler
VLT AQUA Drive FC202 PID tilslutning og programmerings eksempler VLT Aqua Drive FC200 Indholdsfortegnelse Forord... 3 Forbindelsesoversigt... 4 Initialisering af frekvensomformeren... 5 Tilslutning af
Læs mereCP1x 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 mereELCANIC 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 mereUndersøgelse teknologi og resurser: Eleverne skal lære om enkel produktudvikling fra ide til implementering.
Forløbets titel Design og byg en solcelle racerbil Intro: Solcellelamper findes i mange forskellige versioner til haven. Solcellen omdanner solens energi til elektrisk strøm, så man kan bruge den til fx
Læs mereVelkommen til. EDR Frederikssund Afdelings Almen elektronik kursus. Steen Gruby OZ9ZI
Emne 18: Måleteknik Velkommen til EDR Frederikssund Afdelings Steen Gruby 1 Emne 18: Måleteknik I øvrigt Tidsrum :1900 2200 I pause ca. i midten Toilettet er i gangen mellem køkken og dette lokale De der
Læs mere2. De 7 signaler skal kodes til en 3-bit kode. Enkodningen skal prioriteres som beskrevet i afsnit?? på side??.
01 FORUDSÆTNINGER 01 Forudsætninger Dette kapitel tager udgangspunkt i processerne beskrevet i afsnit?? på side?? Hver enkelt proces tildeles et afsnit, hvorunder det beskrives hvilke hardware moduler,
Læs mereSSI 6000.0400 GSM Fjernbetjenings system for porte/garage døre
1 SSI 6000.0400 GSM Fjernbetjenings system for porte/garage døre Vejledning SSIHuset v/svane Electronic ApS Arildsvej 27, Gråmose, DK-7442 Engesvang mail: ssi@svane-el.dk http: svane-el.dk 2 System for
Læs mereDet Teknisk-Naturvidenskabelige Fakultet Aalborg Universitet
Det Teknisk-Naturvidenskabelige Fakultet Aalborg Universitet Institut for elektroniske systemer TITEL: Digital Diktafon PROJEKTPERIODE: 4. semester 4. februar - 30. maj, 2002 PROJEKTGRUPPE: Gr419-2002
Læs merePID tilslutning og programmerings eksempler
VLT HVAC Drive FC100 PID tilslutning og programmerings eksempler VLT HVAC drive FC100 Indholdsfortegnelse Forord... 3 Forbindelsesoversigt... 4 Initialisering af frekvensomformeren... 5 Tilslutning af
Læs mereX88S. SMS fjernstyring til sommerhuse
X88S SMS fjernstyring til sommerhuse X88s er en GSM/SMS baseret fjernstyring med: 6 indgange 8 relæudgange 2 temperaturfølere Billig i drift, intet abonnement. Kan køre på taletidskort. Nem og hurtig montering.
Læs mereNavn: 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 mereFrekvensbestemmelse. HWP I1 Kursusarbejde Forår 2007
HWP I1 Kursusarbejde Forår 2007 Søren Riis, 3024 Vitus Bering Danmark 31 05 2007 University College Vitus Bering Danmark Teknologi og Managementdivisionen Titel: Frekvensbestemmelse Tema: Hardwareprogrammering
Læs mereDiagnostic 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 mereAf: Valle Thorø Fil.: Oscilloscopet Side 1 af 10
Oscilloscopet Kilde: http://www.doctronics.co.uk/scope.htm Følgende billede viser forsiden på et typisk oscilloskop. Nogle af knapperne og deres indstillinger forklares i det følgende.: Blokdiagram for
Læs mereManual: Ergometer ET6
Manual: Ergometer ET6 Ting du bør vide før du begynder din træning A. Indgang af strøm Tilslut adapteren til udstyret, derefter vil computeren sige en bip-lyd og tænde computeren i manuel mode. B. Program
Læs mereVLT AutomationDrive FC300. Tilslutning og programmerings eksempler. VLT AutomationDrive FC300
VLT AutomationDrive FC300 Tilslutning og programmerings eksempler VLT AutomationDrive FC300 Indholdsfortegnelse Forord...3 Initialisering af frekvensomformeren...4 Tilslutning af motorbeskyttelse...5 Start/stop
Læs mereBRUGERVEJLEDNING VIDEOKAMERA
BRUGERVEJLEDNING VIDEOKAMERA Side 2 til nyt videokamera Introduktion Det nye videokamera er et IP-videokamera, der tilsluttes trådløst til din router. Videokameraet fungerer sådan, at du kan se videooptagelser
Læs mereSvane Electronic Timer universal med 8 funktioner 1
Svane Electronic Timer universal med 8 funktioner 1 Digital timer print modul 12V 2000.2231 Multi funktions timer med 8 funktioner, anvendelig i mange installationer, forsyning 12VDC drift. Printet har
Læs mere1. Bevægelse med luftmodstand
Programmering i TI nspire. Michael A. D. Møller. Marts 2018. side 1/7 1. Bevægelse med luftmodstand Formål a) At lære at programmere i Basic. b) At bestemme stedbevægelsen for et legeme, der bevæger sig
Læs mereSvendeprø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 mereTeori om lysberegning
Indhold Teori om lysberegning... 1 Afstandsreglen (lysudbredelse)... 2 Lysfordelingskurve... 4 Lyspunktberegning... 5 Forskellige typer belysningsstyrke... 10 Beregning af belysningsstyrken fra flere lyskilder...
Læs mereOptimering af fraværsregistrering
Journal Optimering af fraværsregistrering Eksamensprojekt i Programmering C, klasse 3.4, 2011 AFLEVERET 09-05-2014 Indhold Abstract... Fejl! Bogmærke er ikke defineret. Problemformulering... 2 Produktet...
Læs mereManual IHC Kompatibelt SMS modem. Generel info:... 2 Controllere:... 2 Manualen... 2 Komandoer syntax... 2 Lysdioder... 2 Tilslutning:...
Manual IHC Kompatibelt SMS modem. Modemmet er kompatibelt med LK IHC visual2 controllere. IHC er registreret varemærke hos LK, Schneider Electric. Generel info:... 2 Controllere:... 2 Manualen... 2 Komandoer
Læs mereVLT HVAC Drive FC100 Basis tilslutning og programmerings eksempler
VLT HVAC Drive FC100 Basis tilslutning og programmerings eksempler VLT HVAC drive FC100 Indholdsfortegnelse Forord... 3 Forbindelsesoversigt... 4 Initialisering af frekvensomformeren... 5 Tilslutning af
Læs mereNanovip Energimåler. El-Nr:
Nanovip Energimåler El-Nr: 63 98 300 102 144 Nanovip PLUS Side 2 INTRODUKTION...3 GENERELT...3 MENU OVERSIGT...4 MEM FUNKTION...6 SPIDS MÅLING...8 HARMONISK ANALYSE...9 PROGRAMMERING...15 RESET MENU...17
Læs mereMCE9637 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 mereX88. X88 er en GSM/SMS baseret fjernstyring med: 8 indgange 8 relæudgange Mulighed for temperaturføler
X88 X88 er en GSM/SMS baseret fjernstyring med: 8 indgange 8 relæudgange Mulighed for temperaturføler Let at betjene. Hurtig montering. Let konfiguration. Hurtig. Fleksibel. Passer i en alm gruppetavle.
Læs mereModbus data modellen er opbygget af fire primære data typer. I nedenstående skema er en kort oversigt over disse.
Modbus RTU protokol Indledning Modbus er en application layer messaging protocol, placeret på 7. lag i OSI modellen, der sørger for client/server kommunikation mellem enheder koblet på forskellige typer
Læs mereMP3 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 mereDansk El-montage manual Portautomatik
Dansk El-montage manual Portautomatik (med fysiske ende stop) Terminaler: Power Portstyring 1 2 Power input 220/230Vac. Kabeldim. 3x1.5 PVIKJ eller lign. 3 4 Advarselslampe. Udgang 230Vac/20W. Signalet
Læs mereVildtkamera DTC-530V.
Vildtkamera DTC-530V. Indhold fortegnelse......... 1 Kom godt i gang.........2 Information......... 2 Anvendelse......... 3 Fjernbetjening...... 3 Hukommelse kort......... 4 Quick Start...... 4 Isæt batterier.........
Læs mereFysik 2 - Den Harmoniske Oscillator
Fysik 2 - Den Harmoniske Oscillator Esben Bork Hansen, Amanda Larssen, Martin Qvistgaard Christensen, Maria Cavallius 5. januar 2009 Indhold 1 Formål 1 2 Forsøget 2 3 Resultater 3 4 Teori 4 4.1 simpel
Læs mere