Arduino styrning av automatlåda (4l80e)

Berätta om dina pågående projekt.
Användarvisningsbild
Bosen
Inlägg: 1750
Blev medlem: 18 juli 2005, 10:56:31
Ort: Karl Gustav, Varberg
Kontakt:

Re: Arduino styrning av automatlåda (4l80e)

Inlägg av Bosen »

Ja... Nu tänker jag lite fel... Mina kontakter i lådan jordar ju när dom sluter....
Användarvisningsbild
hanzibal
EF Sponsor
Inlägg: 2499
Blev medlem: 7 september 2010, 20:54:58
Ort: Malmö/Lund

Re: Arduino styrning av automatlåda (4l80e)

Inlägg av hanzibal »

Iofs bara att vända på det i mjukvaran så det bör inte vara ngt är problem i sig.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 36190
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Arduino styrning av automatlåda (4l80e)

Inlägg av TomasL »

För dina brytare använder du lämpligen en sådan här http://www.freescale.com/files/analog/d ... C33972.pdf
Fixar allt för dig, hanterar både brytare mot jord och brytare mot plus.
Billigare och enklare än optokopplare.
Användarvisningsbild
hanzibal
EF Sponsor
Inlägg: 2499
Blev medlem: 7 september 2010, 20:54:58
Ort: Malmö/Lund

Re: Arduino styrning av automatlåda (4l80e)

Inlägg av hanzibal »

Verkar bökigt att övervaka 3 (väl?) switchar med ett chip via 5 pinnar (spi + interrupt). Mer och komplexare kod ger fler felkällor.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 36190
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Arduino styrning av automatlåda (4l80e)

Inlägg av TomasL »

Faktiskt inte, eftersom du har en hel del vettiga funktioner i kretsen, och du behöver bara tre trådar MISO, MOSI och Klocka.
Kretsen i fråga ger dig bl.a. avstudsning och wetting.
Du får in statusen via SPI.
Användarvisningsbild
Icecap
Inlägg: 24737
Blev medlem: 10 januari 2005, 14:52:15
Skype: torstenhemma
Ort: Aabenraa, Danmark

Re: Arduino styrning av automatlåda (4l80e)

Inlägg av Icecap »

Och de 3 trådar kan man likaväl ta in i µC'n direkt och göra exakt samma sak i mjukvaran, helt utan problem.

Hade det varit fler knappar hade läget varit ett annat men det känns väldigt mycket som att gå över ån efter vatten.

Knapparna via var sin optokopplare, sedan klarar mjukvaran resten, enklare och billigare blir det knappast.
Användarvisningsbild
hanzibal
EF Sponsor
Inlägg: 2499
Blev medlem: 7 september 2010, 20:54:58
Ort: Malmö/Lund

Re: Arduino styrning av automatlåda (4l80e)

Inlägg av hanzibal »

TomasL skrev:Faktiskt inte, eftersom du har en hel del vettiga funktioner i kretsen, och du behöver bara tre trådar MISO, MOSI och Klocka.
Jo, CS kan man ju hårdvira men interrupten lär du väl behöva om du inte vill polla chipet i tid och otid?
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 36190
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Arduino styrning av automatlåda (4l80e)

Inlägg av TomasL »

Nja, visst kan man göra det manuellt, med både digitala och elektriska filter, dock är det så mycket enklare att använda färdiga lösningar för detta, samt att just "Contact-wetting" är svårt att åstadkomma, med "manuella" metoder.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 36190
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Arduino styrning av automatlåda (4l80e)

Inlägg av TomasL »

hanzibal skrev:
TomasL skrev:Faktiskt inte, eftersom du har en hel del vettiga funktioner i kretsen, och du behöver bara tre trådar MISO, MOSI och Klocka.
Jo, CS kan man ju hårdvira men interrupten lär du väl behöva om du inte vill polla chipet i tid och otid?
Tja, polla i tid och otid, i detta fallet räcker det väl lite då och då.
Eftersom main troligen är en loop, så kan ju man göra det varje gång man surrar i loopen eller var tionde gång, eller var....
Användarvisningsbild
hanzibal
EF Sponsor
Inlägg: 2499
Blev medlem: 7 september 2010, 20:54:58
Ort: Malmö/Lund

Re: Arduino styrning av automatlåda (4l80e)

Inlägg av hanzibal »

Beror på kraven men chipet kräver minst 4 pinnar för att slippa polling (5 om bussen skall delas nu eller senare).

Vi har en kaffemaskin på jobbet, den strobar sina knappar vilket gör att den missar knapptryck för jämnan till allmänt förtret så nej, polling bör alltid undvikas, om inte annat så av ren princip tycker jag :-)
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 36190
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Arduino styrning av automatlåda (4l80e)

Inlägg av TomasL »

Jo, men om man använder kretsen ifråga, så har den ju register för knapparna i fråga.
Användarvisningsbild
hanzibal
EF Sponsor
Inlägg: 2499
Blev medlem: 7 september 2010, 20:54:58
Ort: Malmö/Lund

Re: Arduino styrning av automatlåda (4l80e)

Inlägg av hanzibal »

Ja och deras värden läses lämpligen av så snart som möjligt efter att en eller flera switchar bytt tillstånd, dvs då interruptpinnen signalerar detta.

Anm: Personligen tycker jag att den som skrev programvaran till vår kaffemaskin borde piskas till döds :D EDIT: Detta kunde ju få bli den allmänna straffsatsen vid brottsrubriceringen "användande av polling där interrupthantering finnes". :badgrin:
Användarvisningsbild
Icecap
Inlägg: 24737
Blev medlem: 10 januari 2005, 14:52:15
Skype: torstenhemma
Ort: Aabenraa, Danmark

Re: Arduino styrning av automatlåda (4l80e)

Inlägg av Icecap »

Knappar avkänns såklart i en timer-interrupt rutin. Att polla är bara användbart i synnerligt få fall.

Har man en timer-interrupt var 50ms och har två lika avläsningar av knapp-porten är det en godkänd tryckning. Rutinen läser knapp-porten en gång per varv!

Jag lägger ofta till en n-key rollover rutin också och finns det en + och en - knapp brukar jag lägga till autorepeat.

Ibland lägger jag in en buffer för knapptryckningar också, kanske 16 steg.

Men i detta fall skulle jag definitivt avråda från denna krets som Tomas rekommenderar! Inte för att den är dålig eller så men för att den är onödig.

Knapparna som ska styra det hela kommer ganska säkert att sitta "utanför" kretskortet varför det finns störningshänsyn att ta, speciellt i ett fordon. Därför hade jag vald optokopplar-input och låtit knapparna köra med 12V signalering till optokopplarna.

Detta ger i sig en lite filtrering då det inte är ett spänningsnivå på en ingång som ger en "knapptryckning" men istället en ström som ska gå genom LED'n i optokopplaren. Detta tar bort en hel del störningar redan där.

Såklart ska signalen avkodas enl. ovan, alltså i en timer-interrupt och det ska ske 2 exakt lika avläsningar efter varandra innan den är giltig.

Jag har testat en del och kommit fram till att jag inte kan trycka snabbare än 1/10 sek på en knapp så avkänner man med minst 10Hz fångar man alla. Men då jag kräver 2 identiska avläsningar efter varandra får jag då avkänna minst 20gg/sek - och detta har fungerat riktigt bra i väldigt många projekt.
Användarvisningsbild
hanzibal
EF Sponsor
Inlägg: 2499
Blev medlem: 7 september 2010, 20:54:58
Ort: Malmö/Lund

Re: Arduino styrning av automatlåda (4l80e)

Inlägg av hanzibal »

Här är det väl dessutom inga knappar utan switchar/givare i växellådan som aktiveras/deaktiveras maskinellt?
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 36190
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Arduino styrning av automatlåda (4l80e)

Inlägg av TomasL »

Desto viktigare då med en riktig krets.
Förstår inte riktigt Icecaps motstånd till att göra det enkelt, varför komplicera saker med en massa optokopplare motstånd och kondensatorer.
Keep it simple stupid, dvs så lite diskreta komponenter som möjligt.
Skriv svar