Pulsgivare till accelerationsbänk!
Några tankar: (Jag kan ha tänkt fel.)
Jag har svårt att se fördelen med mängder av pulser per motorvarv faktiskt.
Om man mäter tiden mellan pulserna får man ju en vinkel-accelerations/hastighet-sample per avläsning. Vrid- och effektvärden kan beräknas från denna sample. Värdena man får är medelvärdet under perioden. Har man 1 puls per motorvarv får man alltså ett medelvärde på vrid och effekt under det varvet vid varje sample.
Används många värden per motorvarv kommer du få momentana värden på effekten under insugs-, kompressions-, expansions- och avgastakten. Kanske kan vara kul att se på, men jag tror inte så mycket kan utläsas ur dem eftersom värdena troligen är väldigt dämpade, bl.a p.g.a överföringen mellan motorn och tåghjulet.
En sample per motorvarv duger tycker jag därför.
Det borde också komma en övre gräns på hur hög pulsfrekvens som är positivt. Om frekvensen blir tillräckligt hög blir samplingstiden så kort att uP:en inte hinner räkna så långt mellan varje samplingspunkt vilket ju sänker upplösningen.
Fast, iofs, om givaren ger för många pulser per varv behöver man ju inte använda alla kom jag på nu.
Jag har svårt att se fördelen med mängder av pulser per motorvarv faktiskt.
Om man mäter tiden mellan pulserna får man ju en vinkel-accelerations/hastighet-sample per avläsning. Vrid- och effektvärden kan beräknas från denna sample. Värdena man får är medelvärdet under perioden. Har man 1 puls per motorvarv får man alltså ett medelvärde på vrid och effekt under det varvet vid varje sample.
Används många värden per motorvarv kommer du få momentana värden på effekten under insugs-, kompressions-, expansions- och avgastakten. Kanske kan vara kul att se på, men jag tror inte så mycket kan utläsas ur dem eftersom värdena troligen är väldigt dämpade, bl.a p.g.a överföringen mellan motorn och tåghjulet.
En sample per motorvarv duger tycker jag därför.
Det borde också komma en övre gräns på hur hög pulsfrekvens som är positivt. Om frekvensen blir tillräckligt hög blir samplingstiden så kort att uP:en inte hinner räkna så långt mellan varje samplingspunkt vilket ju sänker upplösningen.
Fast, iofs, om givaren ger för många pulser per varv behöver man ju inte använda alla kom jag på nu.
Jo, kloka tankar! Är ny på området och det är ju alltid en prövotid innan man hittar rätt applikation! Men det ligger något i det du säger om för många pulser! Om vi tänker vidare! Program för detta? Var inne på att skapa ett exelblad och exportera alla värden i realltid till det och sen var jag inne på att lära mig ex. Visual basic och göra ett eget program. Höll på med programmering på det glada 80-talet, så det borde inte vara allt för svårt att komma igång. Men finns det andra ideer?
//Markus
//Markus
Här är en länk till en hemmabygd accelerationsbänk
http://wotid.com/content/category/5/14/36/
http://wotid.com/content/category/5/14/36/
Jag har byggt en sådan bänk.
Här finns lite bilder "in action":
http://www.home.staertesjoen.se/lgh51/dyno/bilder/
Jag använder en Heidenhain ROD 426 som är kopplad till en PC via en BasicStamp2 som räknar varvtalet.
Funkar bra förutom att jag har för lätt svänghjul.
/Klas
Här finns lite bilder "in action":
http://www.home.staertesjoen.se/lgh51/dyno/bilder/
Jag använder en Heidenhain ROD 426 som är kopplad till en PC via en BasicStamp2 som räknar varvtalet.
Funkar bra förutom att jag har för lätt svänghjul.
/Klas
Senast redigerad av Noxin 10 november 2006, 22:22:03, redigerad totalt 1 gång.
- bengt-re
- EF Sponsor
- Inlägg: 4829
- Blev medlem: 4 april 2005, 16:18:59
- Skype: bengt-re
- Ort: Söder om söder
- Kontakt:
Mät pulsintervall ist för att räkna pulser! 1 puls per varv torde räcka gott - uC är bra på att mäta pulsintervall och en datatakt på 10-50Hz måste väl ändå räcka??? Du får absoultvartalet med tiotals Hz och förstaderivatan (skalad effekt) i samma datahastighet med väldigt lågt brus om du nte har givargitter vilken är lätt att undvika om du bara behöver en 1puls/varv givare...
Det här är et problem som bör lösas med smart elektronik istället för onödigt dyra givare...
Det här är et problem som bör lösas med smart elektronik istället för onödigt dyra givare...
Vet inte om ni sett denna men kan vara intressant att titta på:
http://home6.swipnet.se/~w-61197/dyno.html
http://home6.swipnet.se/~w-61197/dyno.html
Pjator: Det är jag som har byggt den bänken och sitter på moppen.
Bearing: Det låter intressant.
Just nu använder jag en BSII som räknar antalet pulser under en viss tid (0.025sek tror jag det var) och skickar vidare seriellt till datorn, men jag tror att det kan bli bättre att mäta tiden det tar för trumman att rotera varje varv.
Bearing: Det låter intressant.
Just nu använder jag en BSII som räknar antalet pulser under en viss tid (0.025sek tror jag det var) och skickar vidare seriellt till datorn, men jag tror att det kan bli bättre att mäta tiden det tar för trumman att rotera varje varv.
Jag har funderat lite, skickar ett pm.
EDIT: Jag lägger in fundering här, så kan många granska tankarna.
Jag tänkte själv bygga en bromsbänk enligt tröghetsmomentsprincipen en gång, men fick inte tag i materialet till trumman, så jag har hunnit fundera mycket på hur man bäst gör just det som du vill ha gjort.
Berätta vad du vill att programmet ska göra så kan jag fundera och programmera efter helgen. Om pulsgivaren som ger 1250 pulser/varv sitter monterad, och är tillförlitlig, samt lätt att läsa av med en ingång på PIC:en kan jag göra så att PICen mäter tiden för 1250 pulser, eller valfritt annat antal. Annars tror jag en bipolär hallgivare samt två/flera magneter på trumman blir tillförligtligt.
Jag tror det krävs att dynon mäter tätare än varvperioden på motorn, annars kommer ju det framräknade värdet bli medelvärdet av varvtalsspannet mellan mätpunkterna.
Tror det det blir en tillräckligt noggran mätning om PICen skickar tiden i mikrosekunder mellan mätpunkterna. Med 3000 rpm och 5 mätpunkter per varv fås 250 mätvärden per sekund. Då blir felet högst 2-3/4000-delar. Den kortaste tiden en liten PIC kan mäta är 1/5-dels us.
Variabeln som tiden sparas i ska vara så liten som möjligt, annars finns det risk att värdet inte hinner överföras med 9600 baud, innan nästa kommer. Fast man kan ju lite högre baudrate förstås.
En 16-bitars variabel är antagligen för liten eftersom längsta intervallet blir 65 ms. 24 bitars blir nog lämplig, då ryms 16 sekunder. Det är nog bra att även använda någon enkel paketering, så att datorn märker om något mätvärde försvinner. T.ex. en 8-bitars variabel som ökar med 1 för varje värde, och slår runt när den blir fylld. I det fallet hinner det skickas 9600/40 = 240 värden per sekund.
Det finns nog även kapacitet i PICen så att den kan räkna ut effekt/vridmoment och sånt, samt visar den på en display eller sparar i någon minne. Så att man kan köra på ett litet batteri utan att ha dator med sig. Fast det tar förstås mycket längre tid att programmera och konstruera elektronik till än att bara skicka värden till serieporten.
EDIT: Jag lägger in fundering här, så kan många granska tankarna.
Jag tänkte själv bygga en bromsbänk enligt tröghetsmomentsprincipen en gång, men fick inte tag i materialet till trumman, så jag har hunnit fundera mycket på hur man bäst gör just det som du vill ha gjort.
Berätta vad du vill att programmet ska göra så kan jag fundera och programmera efter helgen. Om pulsgivaren som ger 1250 pulser/varv sitter monterad, och är tillförlitlig, samt lätt att läsa av med en ingång på PIC:en kan jag göra så att PICen mäter tiden för 1250 pulser, eller valfritt annat antal. Annars tror jag en bipolär hallgivare samt två/flera magneter på trumman blir tillförligtligt.
Jag tror det krävs att dynon mäter tätare än varvperioden på motorn, annars kommer ju det framräknade värdet bli medelvärdet av varvtalsspannet mellan mätpunkterna.
Tror det det blir en tillräckligt noggran mätning om PICen skickar tiden i mikrosekunder mellan mätpunkterna. Med 3000 rpm och 5 mätpunkter per varv fås 250 mätvärden per sekund. Då blir felet högst 2-3/4000-delar. Den kortaste tiden en liten PIC kan mäta är 1/5-dels us.
Variabeln som tiden sparas i ska vara så liten som möjligt, annars finns det risk att värdet inte hinner överföras med 9600 baud, innan nästa kommer. Fast man kan ju lite högre baudrate förstås.
En 16-bitars variabel är antagligen för liten eftersom längsta intervallet blir 65 ms. 24 bitars blir nog lämplig, då ryms 16 sekunder. Det är nog bra att även använda någon enkel paketering, så att datorn märker om något mätvärde försvinner. T.ex. en 8-bitars variabel som ökar med 1 för varje värde, och slår runt när den blir fylld. I det fallet hinner det skickas 9600/40 = 240 värden per sekund.
Det finns nog även kapacitet i PICen så att den kan räkna ut effekt/vridmoment och sånt, samt visar den på en display eller sparar i någon minne. Så att man kan köra på ett litet batteri utan att ha dator med sig. Fast det tar förstås mycket längre tid att programmera och konstruera elektronik till än att bara skicka värden till serieporten.