Urenkel och strömsnål BPM-oscillator....

Planering och tankar kring eventuella framtida projekt.
ClaesJoakim
Inlägg: 8
Blev medlem: 21 november 2006, 15:02:37
Ort: STOCKHOLM

Urenkel och strömsnål BPM-oscillator....

Inlägg av ClaesJoakim »

Nu funderas det på ett bygge som ska ha en oscillator som styrs av en switch, eller dylikt. Alltså, oscillatorns frekvens skall vara samma som den takt (BPM) man bankar på switchen. Jag har ingen aning hur detta kan göras. Någon här som vet? Den ska drivas på batteri, därför bör den dra lite ström också.

MVH

/ClaesJoakim
Användarvisningsbild
Icecap
Inlägg: 26632
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Inlägg av Icecap »

Typisk uppgift för en mikroprocessor!

Som "bankesensor" duger en piezo-membran helt fint.

Mjukvaran ska sedan filtrera lite och mäta tiden mellan varje slag och om de kommer inom samma tid ± lite är det bara att "låsa in", uteblir de kör den på som den var.
ClaesJoakim
Inlägg: 8
Blev medlem: 21 november 2006, 15:02:37
Ort: STOCKHOLM

Inlägg av ClaesJoakim »

Hej och tack igen Icecap. Tyvärr ligger processorer helt utanför mitt kunskapsområde. Jag kan bara lite simpel analogteknik och ev. de enklaste digitala kopplingarna (typ någon NAND-grind). Det känns som om det ränner iväg ordentligt med komponenter med det du föreslår, men kanske är enda sättet.
Användarvisningsbild
JimmyAndersson
Inlägg: 26571
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Inlägg av JimmyAndersson »

Det blir färre komponenter om man använder en mikroprocessor. Det skulle bli väldigt mycket kretsar om man använde en annan lösning.

Lite snabbt skissat utifrån mikroprocessor-förslaget:
* Förstärka piezo-membranet. Delar: OP-förstärkare och 2-3st motstånd.
* Litet filter. Delar: OP-förstärkare, en kondensator och 2st motstånd.
* Beräkning. Delar: Mikroprocessor.

Själva koden (programmet) är ganska enkelt. Det behövs i princip fyra kod-delar:
* En timer (i koden alltså) som tickar på med lämplig hastighet för att få den noggrannheten som man vill ha.
* En kod-del som ger ett interrupt (en sorts markering) när man slår på membranet.
* En kod-del som räknar ut hur ofta som man slår på membranet.
* En kod-del som ser till så att en annan timer tickar med samma hastighet som man bankat in. Timer-pulsen skickas även ut på en utgång.

Ungefär sådär..
Användarvisningsbild
Zyxel615
EF Sponsor
Inlägg: 1839
Blev medlem: 9 november 2005, 21:20:43
Ort: Kiruna

Inlägg av Zyxel615 »

Dags att lära sig :)

Man kan göra otroligt mycket med mikroprocessorer, det är verkligen värt att kunna.
Användarvisningsbild
babbage
Inlägg: 655
Blev medlem: 10 november 2004, 11:33:17
Ort: N-tälje

Inlägg av babbage »

Om man ska medelvärdesbilda, filtrera osv blir det klart enklast med en microprocessor. Men visst går det att göra enkla lösningar med diskreta komponenter. Om man nöjer sig med att mäta tiden mellan två "slag" kan man klara sig med en räknare, register och lite logik.

Vid första slaget, reseta räknaren. Vid andra slaget latcha in räknevärdet i ett register och reseta räknaren. Så är det bara att banka på.

Sedan i uppspelningsmod räknar räknaren till värdet i registret och när den kommer till det värdet resetar den och ger ifrån sig ett litet ljud.

Bara en liten idé för att visa att det inte behöver vara så komplicerat att göra enkla lösningar utan microprocessorer. Sedan att det är bra att kunna programmera u-processorer är inget jag argumenterar emot. Men det behöver inte vara en patentlösning för alla problem.
Användarvisningsbild
JimmyAndersson
Inlägg: 26571
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Inlägg av JimmyAndersson »

Håller fullständigt med. Allt måste inte lösas av mikroprocessorer.
Smart idé med räknaren. Det tänkte jag inte på. Får skylla på att det blev sent igår.. :) Hade lite problem med en dator. Defragmenterade i 5-6 timmar och försökte få bort en trojan i 4 timmar. Men det gick till slut.
Användarvisningsbild
Icecap
Inlägg: 26632
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Inlägg av Icecap »

Jovisst går det att göra med diskreta kretsar men det blir en hel del mer kretsar.

Att "tappningen" ska förstärkas till användbart nivå är ju lika så där skiljer det sig knappast på komponenterna.

Kvar är skillnaden på upprepningarna:
* Antingen 1 st. µC, kan fint vara en 8-pinnig sak med intern oscillator, alltså totalt 1 krets.

* Eller en lösning som innebär att man ska ha en omställbar räknare (upp/ner-räknare) samt en datalatch. Antalet bit är beroende av lägsta BMP + upplösningen men minst 8 skulle jag tro. Sedan lite logik som känner av att man knackar och ställer räknaren i rätt läge och latchar datan in i latchen.

Man kan komplettera detta system med en ner-räknare (och ha den första till enbart upp-räknare), det medger då att man kan få ut BMP-knäpp kontinuerligt utan att de ska stoppas av att man "ställer in" frekvensen.

Är det otänkbart att börja med µC tar det ju bort den ena lösningen men jag vill fasthålla att ska man ha den liten, smidig och enkel är det µC som gäller.

Strömåtgången kommer nog att vara ganska lika om man använder CMOS-logik versus en lämplig µC med lågeffektläge.
Användarvisningsbild
Nisse
Inlägg: 908
Blev medlem: 9 juli 2006, 23:25:46
Ort: Kumla

Inlägg av Nisse »

Varför skall man förstärka "tappningen" eller vad man kallar det. I första inlägget står det att det kan vara en switch. En vanlig enkel momentan strömställare, då behövs inga OP-ampar :) Möjligen en monostabil vippa till avstudsning (om man inte gör det i en uC.)

Mvh
Nisse
Användarvisningsbild
JimmyAndersson
Inlägg: 26571
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Inlägg av JimmyAndersson »

Det står visserligen "en switch, eller dylikt" men det blir *betydligt* bättre känsla med något som inte rör på sig (märkbart), som ett piezo-membran. Det var ju just dessa piezo-membran vi föreslog och då behövs förstärkning och lite "tillfixning" av signalen för att det ska bli bra. Hade vi fortsatt på tanken med en switch så hade det förstås inte behövts någon förstärkning, men det hade heller inte blivit lika bra resultat.
Användarvisningsbild
Schnegelwerfer
Inlägg: 1863
Blev medlem: 8 november 2004, 13:46:56

Inlägg av Schnegelwerfer »

Med en mekanisk switch får du dessutom kontaktstudsproblem som måste lösas. Busenkelt med en uC, enkelt (men med mer kretsar) med diskret logik.

Nu vet jag inte exakt hur ett piezoelektriskt membran beter sig, det är möjligt att även ett sådant kräver någon form av "avstudsning".
ClaesJoakim
Inlägg: 8
Blev medlem: 21 november 2006, 15:02:37
Ort: STOCKHOLM

Inlägg av ClaesJoakim »

Trevligt med så mycket svar. Jag skulle gärna vilja lära mig om mikroprocessorer, har velat i många år men har ingen aning om hur det ska gå till. Det som är svårt med digitalteknik vs analog dito är alla trådar åt så många olika håll som ska styra en eller flera funktioner. Jag har tittat på en del scheman men förstår aldrig någonting. Det som ni förklarar här med mikroprocessor för räkning osv, kan det realiseras i ett schema som en analognisse kan förstå? Jag förstår att det är en del jobb att göra det. Eller finns det någon bra litteratur typ "Himla Smarta Mikroprocessorfunktioner For Dummies" att rekommendera? Tack på förhand.

När jag jobbade som servicetekniker för en massa år sedan fanns det folk där som var bra på att laga digitala apparater och jag försökte lära mig av dem. Men det tycktes mer som om dom var vana vid apparaterna, att dom visste vad som brukade gå sönder så dom lödde ur lämpliga kretsar och bytte helt enkelt. Oftast gick det bra. Jag ville lära mig logisk felsökning etc, men ingen där jobbade på detta sätt, så jag kunde inte lära mig ett skvatt.

I en analog apparat är det mest bara matningsspänning och sen ungefär en "signalväg" att följa.

PS. Det där med Piezo är kanske inte så dumt, men "switchfunktioen" får helst inte störas av buller runtomkring, t.ex en full trummis.
Användarvisningsbild
Icecap
Inlägg: 26632
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Inlägg av Icecap »

Om vi utgår ifrån en plastlåda (sådär standard elektroniklåda = man tar vad man hittar) och limmar fast en piezo-högttalare-skiva fast under locket (finns i McDånals leksaker som låter bl.a.) får man en bra mikrofon till detta. Silikon är bra att limma fast den med.

Att omhandla µC här är, som du kanske förstår, ganska dödfödd, ämnet är så pass stort att det är omöjligt. Men tänk dig följande:
Du har tillgång till en timer, du kan ställa intervallen, du kan läsa ingångar och du kan då skriva program av typen: om knapp-ingången är aktiv (alltså att knapppen är intryckt) och ....något annat om man vill det.... då ska jag göra detta:
* Slå på den utgången med en LED på.
* Slå av utgången som styr motorn (eller vafan som helst)
osv.

Jag satt en gång och hade byggt en tripmätare, den skulle programmeras. Jag hade en klocka i, den fick in pulser från hjulen (längd) och tändningspulser (motorvarv).

Sen satt jag och funderade på vad man kunde med dessa data och det var inte så lite!

Förutom 10 tripmätare + odometer + "tankmätare" byggde jag in funktioner som angav hur fort jag skulle köra för att hinna med en viss sträcka till en viss tid, en motsvarande funktion som dock angav när jag var framme (dessa 2 krävde att jag knappade in sträckan).

Jag byggde t.ex. in en HK-mätare, den krävde att man knappade in bilens vikt, sen fick man ut HK/100 RPM.

På det vis byggdes funktionerna ut, steg efter steg och allt med samma hårdvara, det var enbart programmet som ändrades.

Så det låter kanske stort att börja med µC men det behöver inte vara det, det finns så klart en startsträcka men sedan är det bara att ta ett steg i taget. Viktigt är dock att man ser till att ha bra underlag när man börjar: en bra programmeringsenhet är mycket viktig, till PIC rekommenderar jag WISP628 som sodjan kanske säljer.

Att kämpa med att göra programmet så att det blir rätt är jobbigt nog men är det samtidig struligt av bara fan att få programmet in i kretsen kan alla ju totaltappa suget.
Användarvisningsbild
JimmyAndersson
Inlägg: 26571
Blev medlem: 6 augusti 2005, 21:23:33
Ort: Oskarshamn (En bit utanför)
Kontakt:

Inlägg av JimmyAndersson »

ClaesJoakim:
"Det där med Piezo är kanske inte så dumt, men "switchfunktioen" får helst inte störas av buller runtomkring, t.ex en full trummis."

Sätt en on/off-switch på trummisen. :)

Buller eller musik behöver inte störa piezo-elementet eftersom fingertappande ger så låga frekvenser och högre volym än musiken, även om den spelas med väldigt hög volym. För att apparaten bara ska lyssna på fingertappandet så sätter man ett högpassfilter som plockar bort allt över en viss frekvens. Därefter en schmitt-trigger som har funktionen att den bara ger en signal om in-signalen (från fingertappandet) är över en viss volym. För att förstärka fingertappandets låga frekvenser kan man även spänna en tygbit några millimeter över piezoelementet. Kom på idén när jag trummade på soffan och en snabb test visade att det fungerar även i detta sammanhang. :)


Jag kan avslöja att jag har en apparat pågång som bl.a har funktionen du söker. Om du inte har bråttom utan kan vänta någon månad så kan du köpa en sådan av mig.
ClaesJoakim
Inlägg: 8
Blev medlem: 21 november 2006, 15:02:37
Ort: STOCKHOLM

Inlägg av ClaesJoakim »

Tack för alla tips. Men detta blev för invecklat så jag skippar idén. För många risker till felkällor.
Skriv svar