KompasKlok Opensource Ontwikkeltool Technisch document Versie 1.5 september 2012
Inhoud Inleiding... 3 Overzicht KompasKlok... 4 Schema... 5 Componentenopstelling... 7 Componentenlijst... 9 Testpunten... 10 Open-Drain output... 11 Embedded software... 14 2 PC software... 15 Bootloader... 15 Interfacesoftware... 16 Ymif Engineering, maart 2012
Inleiding De kompasklok, een 'open-source' ontwikkeltool. De kompasklok heeft vele mogelijkheden en is ontworpen door een professioneel team ingenieurs van Ymif Engineering. Het is een kompas en een klok, maar tegelijkertijd ook een temperatuurindicator, infrarooddetector en een waterpas. De kompasklok is het bewijs dat met weinig middelen veel mogelijk is. Er zijn standaard 24 applicaties ingebouwd die mogelijk zijn met de aanwezige componenten op de kompasklok. Voor de bediening wordt gebruik gemaakt van capacitieve toetsen en door de aanwezige USB-poort kan de kompasklok ook aangesloten worden aan de PC. Zowel hardware als software zijn 'open-source'. Bestaande applicaties kunnen herschreven worden, maar er kunnen ook geheel nieuwe applicaties geprogrammeerd worden. Omdat er een 'Open-Drain' output aanwezig is kunnen er eenvoudig eigen ontworpen schakelingen aangesloten worden, maar ook met de vele testpunten of soldeerpunten is het mogelijk de kompasklok naar eigen wens uit te breiden. Deze handleiding zal een overzicht geven wat de kompasklok allemaal kan. Verder zijn schema's, componentopstellingen en aansluitvoorbeelden terug te vinden in deze handleiding. 3 Zilverstraat 58 Tel: +31 (0)70-3292567 info@ymif.nl 2544 EL Den Haag Fax: +31 (0)70-3096344 www.ymif.nl
Overzicht KompasKlok De kompasklok wordt geleverd met standaard software. Deze software maakt gebruik van alle aanwezige hardwareonderdelen op de kompasklok. De kompasklok is standaard geprogrammeerd met 24 applicaties. Met behulp van de twee capacitieve toetsen A en B kunnen applicaties gestart, gestopt en geconfigureerd worden. De beschrijving en werking van alle applicaties is terug te vinden in de algemene handleiding van de kompasklok. Deze is te downloaden van www.ymif.nl/kompasklok. De kompasklok bevat de volgende applicaties: 4 Buitenring Binnenring 1. Klok 1. Infrarood zender 2. Klok met alarmweergave 1 2. Infrarood Furby 3. Klok met alarmweergave (wake up) 2 3. Geluidsniveaumeter 1 4. Kompas 4. Klapschakelaar 1 5. Eierwekker 1 5. Temperatuurindicator 6. Dobbelstenen 6. 3D Muis 7. Metronoom 1 7. PWM-generator 2 8. Roll/Pitch indicatie 8. Spelletje 9. Objectbeveiliging 1 9. Lichteffect (RGB-sturing) 10. 2D Waterpas 10. Zandloper 1 11. Communicatie met de smartphone 11. Spanningsindicator 12. Infrarood detectie en -schakelaar 1 12. Zelftest 1 Applicatie schakelt 'Open-Drain' output 2 Applicatie schakelt 'Open-Drain' output met PWM Ymif Engineering, maart 2012
Schema 5 Zilverstraat 58 Tel: +31 (0)70-3292567 info@ymif.nl 2544 EL Den Haag Fax: +31 (0)70-3096344 www.ymif.nl
6 Ymif Engineering, maart 2012
Componentenopstelling 7 Zilverstraat 58 Tel: +31 (0)70-3292567 info@ymif.nl 2544 EL Den Haag Fax: +31 (0)70-3096344 www.ymif.nl
8 Ymif Engineering, maart 2012
Componentenlijst QTY Ref TYPE WAARDE Package 1 PCB: Ymif Engineering 1036GV31 PCB 58x84mm 1 R47 RESISTOR 0R $R0603 5 R28,R43,R49,R50,R51 RESISTOR 10R 1% $R0603 1 R37 RESISTOR 27R 1% $R0603 3 R39,R52,R53 RESISTOR 47R 1% $R0603 4 R33,R34,R35,R36 RESISTOR 100R 1% $R0603 1 R27 RESISTOR 120R 1% $R0603 24 R14,R1,R15,R2,R16,R3,R17,R4,R18, RESISTOR 220R 1% $R0603 R5,R19,R6,R7,R8,R9,R20,R10,R21, R11,R22,R12,R23,R13,R24 1 R29 RESISTOR 470R 1% $R0603 1 R41 RESISTOR 1k 1% $R0603 1 R42 RESISTOR 4k7 1% $R0603 7 R25,R26,R40,R30,R31,R32,R44 RESISTOR 10k 1% $R0603 3 R38,R45,R46 RESISTOR 100k 1% $R0603 1 R55 RESISTOR 1M 1% $R0603 2 C8,C9 CAPACITOR 15pF/50V $C0603 2 C4,C1 CAPACITOR 12pF/25V $C0603 1 C12 CAPACITOR 220nF/25V $C0603 1 C16 CAPACITOR 4,7uF/6,3V $C0603 13 C2,C3,C5,C6,C7,C10,C14,C15,C18, CAPACITOR 100nF/25V $C0603 C19,C20,C21,C22 1 C17 CAPACITOR 1nF/50V $C0603 1 C11 CAPACITOR 10uF/6,3V $C0805 1 C13 TANTALUM 10uF/6,8V $TANKO_A 1 L1 INDUCTOR Wurth 742 792 66 $R0603 1 L2 LINE_FILTER Wurth 744 212 100 $WE_SL2 9 24 D22,D11,D3,D23,D12,D4,D24,D13, LED $LED1206 D5,D14,D6,D15,D7,D16,D8,D17,D9, KP-3216SURCK Red D18,D19,D20,D1,D21,D10,D2 1 D30 LED KP-3216SYC Yellow $LED1206 2 D27,D28 SCHOTTKY_DIODE BAS70-04 $HSMS-2822 2 D26,D29 SCHOTTKY_DIODE STPS0520Z $SOD-123 1 D25 IR LED GL100MD1MP1 $LED0805 1 TVS1 TVS Wurth 824 001 02 $SOT23_6 2 TS1,TS2 NPN MMUN2231LT1G $SOT23_MUN 1 T1 P-MOSFET IRLML6402PBF $SOT23_BSS 2 T2,T3 N-MOSFET FDN337N $SOT23_BSS 1 IC1 MICROCONTROLLER PIC24FJ64GB004-I/ML $QFN_44 1 IC2 POWER LP2985_IM5-3.3 $MA05A REGULATOR 1 IC5 AND PORT SN74LVC1G08DBVR $SOT23_5 1 IC4 EEPROM 24FC256- I/SN $SO8 1 IC3 SENSOR MODULE LSM303DLM $LGA-28 1 X1 XTAL FC13F 32.768kHz $XTAL_FC13F 1 X2 XTAL TSX-3225 16MHz $XTAL_TSX_3225 1 USB1 MINI_USB Wurth 651305142821 $MINI_USB 1 MIC1 SMD_MIC SPM0208HD5 $SMD_MIC 1 IR1 IR_SENSOR TSOP75236TT $IR_SENSOR 1 X3 BUZZER KMTG1603 $BUZZER_SMD_1 1 B1 BATTERY HOLDER Keystone 2468 BAT_AAA 2 BATTERY AAA Zilverstraat 58 Tel: +31 (0)70-3292567 info@ymif.nl 2544 EL Den Haag Fax: +31 (0)70-3096344 www.ymif.nl
Testpunten Op de kompasklok zijn diverse testpunten en/of soldeerpunten aangebracht. Het doel hiervan is dat er zelf aan de kompasklok gemeten kan worden. Doordat er ook aan de testpunten gesoldeerd kan worden is het mogelijk de kompasklok zelf uit te breiden met eigen schakelingen. Alle testpunten zijn terug te vinden aan de achterkant van de kompasklok, zie Figuur 1. In Tabel 1 is van alle testpunten een omschrijving terug te vinden. 10 Figuur 1 - Overzicht testpunten Nr. Omschrijving 1 Aansturing led 1 2 Aansturing led 2 3 Aansturing led 3 4 Aansturing led 4 5 Aansturing led 5 6 Aansturing led 6 7 Aansturing led 7 8 Aansturing led 8 9 Aansturing led 9 10 Aansturing led 10 11 Aansturing led 11 12 Aansturing led 12 13 Aansturing buitenring 14 Aansturing binnenring 15 Device IO 16 Aansturing buzzer 17 Microfoon output 18 Voedingsspanning 3V 19 Aansturing 'Open-Drain' output na weerstand 20 I 2 C SCL 21 I 2 C SDA 22 Infrarood sensoroutput 23 Device Power 24 Infraroodled 25 Infraroodled aansturing 26 USB D- 27 USB D+ 28 Aansturing 'Open-Drain' output voor weerstand Tabel 1 - Omschrijving testpunten Ymif Engineering, maart 2012
Open-Drain output De kompasklok bevat een 'Open-Drain' output. Het gebruik ervan en diverse aansluitvoorbeelden worden in dit hoofdstuk besproken. In Figuur 2 is te zien hoe de interne FET aangestuurd wordt en hoe deze aangesloten is aan de 'OUT pin' van de kompasklok. Figuur 2 - Overzicht Open-Drain Output De komende voorbeelden in dit hoofdstuk laten eenvoudige schakelingen zien om een led aan te sturen op diverse manieren. 11 Figuur 3 laat een aansluitvoorbeeld zien hoe eenvoudig een led aangesloten kan worden op de 'Open-Drain' output. Er wordt in het voorbeeld gebruik gemaakt van de 5V USB-spanning. Deze schakeling is geschikt voor een applicatie die de output schakelt met PWM. Figuur 3 - Aansluitvoorbeeld externe led Zilverstraat 58 Tel: +31 (0)70-3292567 info@ymif.nl 2544 EL Den Haag Fax: +31 (0)70-3096344 www.ymif.nl
Figuur 4 laat een aansluitvoorbeeld zien hoe eenvoudig een relais geschakeld kan worden door middel van de 'Open-Drain' output. (Vergeet de zgn. vrijloopdiode niet!!!) Er wordt gebruik gemaakt van een externe spanning van 12V. Er kan ook gebruik gemaakt worden van de 5V USB-spanning in plaats van een externe 12V. Gebruik hiervoor dan wel een '5V-relais'. Deze schakeling is geschikt voor een applicatie die de output aan/uit schakelt. 12 Figuur 4 - Aansluitvoorbeeld relais Figuur 5 laat een aansluitvoorbeeld zien hoe eenvoudig een 'solid-state' relais geschakeld kan worden door middel van de 'Open-Drain' output. Er wordt gebruik gemaakt van het lichtnet als externe spanning. Deze schakeling is geschikt voor een applicatie die de output met PWM schakelt. Figuur 5 - Aansluitvoorbeeld extern 'solid-state' relais Ymif Engineering, maart 2012
Figuur 6 laat een aansluitvoorbeeld zien hoe eenvoudig een externe MOSFET (Ptype) geschakeld kan worden met behulp van de 'Open-Drain' output. Figuur 6 - Aansluitvoorbeeld externe MOSFET Specificatie 'Open-Drain' output Bij het gebruik van de interne 5V USB-spanning: I max : 180mA 13 Bij het gebruik van een externe spanning: V max : 30V : 1A I max Als het gewenst is de 'Open-Drain' output te gebruiken voor een hogere stroom, dan moet er gebruikt gemaakt worden van een externe schakeling met bijvoorbeeld een relais of externe FET. De maximale stroom is dan afhankelijk van de specificaties van het gekozen component. LET OP: Bij het aansluiten van een externe schakelende voeding kan de werking van de capacitieve toetsen verstoord worden. Aangeraden word een externe voeding te gebruiken met intern een transformator en lineaire regelaar. Wanneer de KompasKlok gevoed wordt uit een laptop die is aangesloten op een externe schakelende voeding kan dit ook de werking van de capacitieve toetsen verstoren. Zilverstraat 58 Tel: +31 (0)70-3292567 info@ymif.nl 2544 EL Den Haag Fax: +31 (0)70-3096344 www.ymif.nl
Embedded software De software behorend bij de kompasklok is te downloaden van de website www.ymif.nl/kompasklok Benodigde programmeeromgeving Benodigde C-compiler : MPLAB IDE : MPLAB C Compiler for PIC24 MCUs 14 Ymif Engineering, maart 2012
PC software Voor de kompasklok zijn er twee softwareprogramma's voor op de PC beschikbaar: Bootloader Kompasklok interfacesoftware Bootloader Als er een nieuwe versie software beschikbaar is voor de kompasklok kan deze eenvoudig via USB geüpload worden. Voor het uploaden van software is er speciaal bootloadersoftware beschikbaar voor op de PC, zie Figuur 7. 15 Figuur 7 - Bootloader Om nieuwe software in de kompasklok te laden moeten de volgende stappen doorlopen worden: 1. Open de bootloadersoftware. 2. Verbindt de KompasKlok met de USB-kabel aan de PC. Zorg ervoor dat er geen batterijen in de KompasKlok zitten, voordat de USB-kabel in de KompasKlok gestoken wordt. 3. De kompasklok en de bootloadersoftware maken automatisch verbinding. 4. Klik op "Open Hex File" en selecteer de nieuwe "hex-file"(deze handeling hoeft alleen maar uitgevoerd te worden bij het programmeren van de eerste KompasKlok). 5. Klik vervolgens op "Program/Verify". 6. Kies na afloop van het programmaren in het pop-up menu voor "Ja" of "Nee" en volg de aanwijzingen op het scherm. 7. De kompasklok zal doorstarten naar de zelftest. De bootloader is geschikt voor Windows XP (vanaf service pack 2), Vista en 7. Zilverstraat 58 Tel: +31 (0)70-3292567 info@ymif.nl 2544 EL Den Haag Fax: +31 (0)70-3096344 www.ymif.nl
Om de bootloader te kunnen gebruiken is het belangrijk dat het ".NET Framework 4.0" geïnstalleerd staat op de computer. Deze is te downloaden via onderstaande link: http://www.microsoft.com/nl-nl/download/details.aspx?id=17851 Tevens dient de "Microsoft Visual C++ 2010 Redistributable Package (x86)" geïnstalleerd te staan op de computer. Deze is te downloaden via onderstaande link: http://www.microsoft.com/en-us/download/details.aspx?id=5555 De "hex-files" zijn te downloaden van de website www.ymif.nl/kompasklok. 16 Interfacesoftware Voor de kompasklok is er interfacesoftware beschikbaar voor op de PC. Hiervoor moet de kompasklok via USB verbonden worden aan de PC. Van enkele aanwezige componenten op de kompasklok is het mogelijk de data op te vragen. De volgende data is weer te geven in de software: De diverse assen van zowel het kompas als de versnellingsopnemer De temperatuur Het geluid gemeten door de microfoon Tevens is het mogelijk in de software de gecodeerde tekst voor de smartphone app te wijzigen. Maar ook is het mogelijk de tijd van de kompasklok te synchroniseren met de tijd van Windows. Figuur 8 laat een screenshot van de software zien. Ymif Engineering, maart 2012
Figuur 8 - Screenshot PC software De interfacesoftware is geschikt voor Windows XP (vanaf service pack 2), Vista en 7. Om de interfacesoftware te kunnen gebruiken is het belangrijk dat het ".NET Framework 4.0" geïnstalleerd staat op de computer. 17 Deze is te downloaden via onderstaande link: http://www.microsoft.com/nl-nl/download/details.aspx?id=17851 Verder is er een driver nodig, deze is te downloaden van de website www.ymif.nl/kompasklok De bestanden "KompasKlok.exe" en "ZedGraph.dll" dienen ten alle tijde bij elkaar opgeslagen te worden op de computer. Zilverstraat 58 Tel: +31 (0)70-3292567 info@ymif.nl 2544 EL Den Haag Fax: +31 (0)70-3096344 www.ymif.nl