Help - Search - Member List - Calendar
Full Version: Vitezometru electronic
DaciaClub - Forum Dacia > Dacia Logan > Imbunatatiri - Dacia Logan
Pages: 1, 2
FRATELLO
As vrea sa construiesc un vitezometru electronic pentru Logan, cu afisare pe un display numeric. Nu stiu insa ce forma are semnalul care ajunge in bord. Ar trebui sa contruiesc un numarator de impulsuri (ca in atasament) sau un convertor frecventa-tensiune ? Ma puteti ajuta cu informatia necesara ? Multumesc anticipat !
ursachemihai
vezi ca sunt deja facute in comert....doar trebuie cuplate la masina.
ianacosti
Semnalul este dreptunghiular. Pentru 10km/h ai 13.85Hz, pentru
20-27.75
30-41.65
40-55.55
50-69.4
60-83
70-97.2
80-111.1
90-125
100-138.85
110-152.75
120-166.65
130-180.55
140-194.4
150km/h-208.3Hz

Daca faci ceva poate imi dai si mie schema si codul, ca de cand caut o schema, dar nu stiu sa programez microcontrollere.

Poate faci in cod sa afiseze si turatia ca e acelasi semnal (ca forma).

Cred ca iesi mai ieftin daca folosesti afisoare cu led-uri.
b64chr
Semnalul de la traductorul de viteza este sub forma de impulsuri. La fiecare metru parcurs emite 5 impulsuri. Semnalul merge la UCE injectie, la tabloul de bord si la radio (il captezi de unde ti-e mai usor).
FRATELLO
Va multumesc frumos pentru informatii ! Va voi tine la curent cu mersul proiectului. Numai bine !
OldMan
QUOTE(FRATELLO @ 9 Feb 2009, 21:51)
As vrea sa construiesc un vitezometru electronic pentru Logan, cu afisare pe un display numeric. Nu stiu insa ce forma are semnalul care ajunge in bord. Ar trebui sa contruiesc un numarator de impulsuri (ca in atasament) sau un convertor frecventa-tensiune ? Ma puteti ajuta cu informatia necesara ? Multumesc anticipat !
*



daca vrei sa faci schema care ai atasat-o, nu te va ajuta cu nimic datele care ti-au fost date mai sus.
Interpretarea vitezei o face prin interpretarea turatiei.
Legatura intre motor si spidometru se face prin trad. Hall, care este un traductor magnetic, cu iesire analogica. Adica la fiecare trecere prin dreptul lui a unui camp magnetic acesta scoate 1 logic pe iesire.
At90S2313 nu se mai fabrica...acum s-a inlocuit cu ATTINY2313. Daca ai hex-ul pentru AT90S2313 nu va functiona scris in ATTINY chair daca cele doua sunt compatibile pin la pin.
Pentru a functiona trebuie modificat codul sursa a programului cu specificatiile referitoare la noul microcontroler si apoi compilat in hex. Se poate folosi AVR Studio sau Flow Code si bineinteles rulata secventa de program pe o placa de dezvoltare cu AVR sa vezi daca modificarile sunt corecte. Daca nu....se sapa pana merge.
ianacosti
Ar mai trebui modificata si schema pentru afsioare cu led-uri si pe un port al procesorului sa fie introdusa si turatia, iar printr-un comutator sa selectam
sa afiseze turatia sau viteza.

Daca are cinava timp sa faca chestia asta ar fi super.

Mi-a mai venit o idee: Sa se faca impartirea intre turatie si viteza si sa afiseze
si treapta de viteza. Sunt montaje facute pentru motociclete care se calibreaza singure.
mariuscond
QUOTE(ianacosti @ 11 Feb 2009, 09:27)
Sa se faca impartirea intre turatie si viteza si sa afiseze si treapta de viteza.
*
Chestia asta nu cred ca se face asa. Cind masina se deplaseaza si schimbatorul e "pe liber" iti va afisa eronat treapta de viteza.
costin_bad
Da' de ce trebuie sa stii in ce treapta de viteza este? E o informatie fara nici o relevanta, nu renteaza atata munca doar pt. afisarea treptei. Plus ca trebuie sa-l inveti, cand masina e in repaus, V= 0, dar turatia diferita de 0, cum sa imparta la 0!!! blink.gif
Restul, viteza si turatia afisate numeric sunt relativ simplu de facut, fie clasic cu frecventmetru numeric, fie cu procesor.
IRONICK
Mai bine incepeti voi cu un vitezometru cu afisoare pe leduri si pe urma mai vedeti. Eventual si indicator de turatie cu leduri, sa indice schimbarea treptei, la 2 -3 praguri.
ianacosti
Un user a facut indicator de treapta cu contacte la schimbator, dar cu procesor e mai simplu.

Procesorul nu are cum sa imparta la 0 daca ii zici sa nu imparta.

Poti sa scrii in cod daca turatia e 750 rpm si viteza 0 sa afiseze S de la stop.




costin_bad
Asta asa e, dar la ce ma ajuta sa afisez treapta?
OldMan
vitezometru din schema de mai sus nu e posibil a fi adaptat la auto, pote la biciclete.

Eu lucrez la altceva: un aparat de masura care sa minitorizeze in timp real
1. tensiunea
2. curentul pe circuitul monitorizat
3. puterea consumata
4. puterea activa
5. turatiamotorului

Parametri:
1. tensiune 4V-25V
2. curent 0 to 51 A
3. putere 0 to 999 Wati
4. RPM 200- 10000 ture/min

Afisarea se face pe un LCD 2x16 caractere
Toata informatia este afisata odata pe succesiunea a doua pagini, comutabila din swich
ianacosti
Interesanta schema, si eu voiam sa fac sa afiseze curentul total produs de alternator, si tensiunea cu un icl7107 dar nu stiu cum sa leg suntul.

Aparatul pe care il faci o sa fie legat tot timpul pe masina, sau doar pentru teste?

Cel mai fain ar fi sa luam de pe mufa obd parametrii care ne
intereseaza si sa-i afisam pe un ecran (cum e scangauge).
costin_bad
@oldman: nu masori si puterea reactiva?
Speedometrul din schema lui fratello merge si la auto.
@ianacosti: se leaga in serie in circuitul de masura. Ai shunt pentru 90 Amperi?
bygy007
ce sunt este ca eu am 2 posibilitati 100A / 75mV sau 60A / 75mV
FRATELLO
Voi construi frecventmetrul de aici : http://www.nuxie1.com/guides/funcount-freq...-counter-2.html. Valoarea masurata o impart la 1.385 (din fericire autorul da si codul sursa !) , astfel incit pe display sa-mi afiseze viteza corecta ( V = f/1.385 ; de ex. pentru f=13.85 -> V=13.85/1.385= 10 km/h ; f = 27.75 -> V=27.75/1.385 = 20.0 km/h). Daca aveti alte sugestii, le primesc cu multumiri. Numai bine !
OldMan
....din "fericire" autorul da codul sursa in C, vreau sa vad si eu cum faci compilarea in hex in BASCOM-AVR dupa ce modify sursa, ca programu' respectiv e cu lovele. Sau daca esti "tare" in progamare il compilezi cu alt compilator....asta presupune scrierea intr-un limbaj care sa-l recunoasca compilatoru'.

cand faci modificarea de care spui in ce macrou vei face initializarea?

<span class='edit'>13 Feb 2009, 15:45:</span>
QUOTE(costin_bad @ 12 Feb 2009, 09:27)
@oldman: nu masori si puterea reactiva?
Speedometrul din schema lui fratello merge si la auto.

*



intrebarea cu puterea reactiva e " la misto" banuiesc ca stii cand apare puterea reactiva?

merge la auto cu o conditie....cand o sa reusesti sa montezi traductoru sa-ti citeasca corect viteza unghiulara...cu alte cuvinte...cand vei nimeri durata impulsului data de traductor cu algoritmul de calcul din softul microcontrolerului.
realizabil practic e aproape imposibil...cu conditia ca numarul de incercari sa nu dea o valoare aberanta.
FRATELLO
@Oldman : ma asteptam la o indrumare, nu la remarci rautacioase...Am BASCOM-AVR asa ca o sa pot compila sursa, dupa ce o modific. Nu fac nici o initializare in nici un macrou. Definesc pur si simplu o variabila Vafis= frecventa citita/1.385 si o afisez pe display. Vad eu ce iese...Dvs. sunteti mult mai priceput, dar am vazut ca tare zgarcit la a impartasi din cunostinte...Multumesc oricum !
ianacosti
@fratello, frecventele pe care ti le-am dat eu sunt calculate, deci factorul 1,385 sau 1,39 nu e prea exact. De la 190km/h in sus le am masurate exact.

Am pus un generator de semnal reglabil pe un tablou de logan si am masurat exact frecventa, din 10 in 10 km/h.

Luni cand ajung la munca iti dau valorile excte, dar daca
e nevoie pot sa bag osciloscopul in masina si sa sui o roata pe cric sa masor mai exact.
FRATELLO
Multumesc ! Astept pina luni. Nu cred ca este nevoie chiar sa va chinuiti sa masurati exact, o indicatie aproximativa in jurul valorii aratate de vitezometrul analog este suficienta pentru aplicatia propusa . Oricum am citit ca vitezometrul de la bordul Loganului are si el o toleranta...si chiar nu vreau sa rivalizez cu vreun GPS ! Numai bine !
ianacosti
Uite si valorile masurate:

200km/h-277.77Hz
190-263.15
30-41.66

Nici valorile acestea nu sunt chiar exacte ca am masurat cu osciloscopul.
Azi nu pot sa pun osciloscopul pe masina ca e frig rau.
FRATELLO
Vad ca la 200 km/h abaterea este de 0.2 % (folosind constanta 1.39) ! Mii de multumiri ! Este mai mult decat suficient ! Asa cum am mai spus, nu intentionez sa construiesc ceva ultra-exact. In baza acestor date, voi incepe lucrul la montajul frecventmetrului mentionat anterior.
Va voi tine la curent cu mersul proiectului. Inca o data, multumesc din suflet ! Numai bine tuturor !
costin_bad
oldman, la intrebarea ta iti spun: da, da.
Tu ai enuntat "putere consumata", "putere activa", in circuitul automobilului. Ce intelegi tu prin fiecare din ele?
Care-i rostul unui asemena aparat in conducerea auto?
Pe de alta parte, ce inseamna sa "nimeresc (?!) durata unui impuls" cu "un algoritm"?

fratello, succes cu noul frecventmetru.
OldMan
Eu nu am enuntat, eu am enumerat.
Iti recomand "Teorema transferului maxim de putere activă"
Nu am spus ca se foloseste in timpul condusului.
Algoritmul este noțiunea fundamentală a informaticii.

Te astept cu realizari personale.
costin_bad
nu mi-ai raspuns la nici unul din cele 3 semne de intrebare din postul meu...
IRONICK
Costin, nu-l baga in seama. Asa este el, incerca sa se dea mai deosebit.
Giurisici Fabian
eu imi facusem pe vechea Dacie 1300 vitezometru electronic care functiona foarte bine.
facusem o flansa pe cablul de kilometraj care imi genera 10 imp/ metru , impulsurile erau preluate de un integrat convertor frecventa- tensiune cu caracteristica liniara (LM 2907 sau 2917) apoi tensiunea era citita cu un voltmetru digital cu 3 digiti.
am atasat pdf in caz ca va ajuta cu ceva
adi_stezar
In urma rugamintii lui ianacosti ( http://www.daciaclub.ro/index.php?showtopi...dpost&p=1744233 ) am facut o schema [attachmentid=1627501956] si un cod [attachmentid=1627501957] pentru un vitezometru digital pentru logan. Masurarea vitezei o fac in principiu in aceelasi mod explicat aici: http://www.daciaclub.ro/index.php?showtopi...dpost&p=1742701 .

ianacosti, nu am folosit schema furnizata de tine deoarece in acea schema s-ar putea aprinde doar un singur display la un moment dat, iar pentru afisarea tuturor numerelor, display-urile ar trebui multiplexate in timp ceea ce ar reduce mult din intensitatea luminoasa a ledurilor. In schimb am folosit decodoare de diplay-uri cu 7 segmente (DM9374).
Datorita numarului mic de I/O pe microcontroller se pot afisa maxim 3 numere insa cu putin mai mult soft si jonglarea pinurilor LE de la decodoare s-ar putea extinde si la mai mult de 3 numere (In caz ca se vrea a fi si turometru).

Codul nu l-am testat deoarece cum am zis, nu doresc asa ceva pe masina mea si atunci nu fac partea hardware daca nu imi va folosi, insa daca faceti voi partea hardware si testati pot sa va ajut daca aveti probleme cu el.

Codul este scris in WinAVR (se gaseste gratis pe net) care il si compileaza si creaza fisierul .hex. Codul este calculat pentru o frecventa de 4Mhz deci trebuie setate FUSE BYTES ca sa se obtina aceasta frecventa. Recomand ca, clock-ul sa fie dat de un Quartz (nu de internal RC oscilator) deoarece frecventa acestuia nu variaza cu temperatura, lucru necesar pentru a obtine indicatii corecte de viteza.
ianacosti
Multumesc mult!!!

Am instalat avr studio, o sa ma apuc de hardware.


L.E. Ce tare e codul, afiseaza numai un digit pentru viteza mai mica de 10 km/h.

Sper sa gasesc DM9374.

cand vii prin Brasov cheers.gif
adi_stezar
Si varianta cu 4 digits. [attachmentid=1627501999] [attachmentid=1627502006]

Codul insa aici e putin mai complex si fiind netestat, mai mule lucrui pot sa nu mearga cum trebuie asa ca pentru un novice in d'ale programarii recomand prima varianta, daca aia reuseste se poate incerca si varianta 2.

Prin Brasov nu cred ca trec curand, mersi de invitatie. Oricum mie imi place programarea pe microcontrolere si asta a fost o mica relaxare pentru mine wink.gif biggrin.gif

Legat de gasirea DM9374, orice decodor pt display cu 7 segmente cred ca e bun, aproape toate functioneaza la fel.
FRATELLO
QUOTE(FRATELLO @ 13 Feb 2009, 15:33)
Voi construi frecventmetrul de aici : http://www.nuxie1.com/guides/funcount-freq...-counter-2.html. Valoarea masurata o impart la 1.385 (din fericire autorul da si codul sursa !) , astfel incit pe display sa-mi afiseze viteza corecta (  V = f/1.385 ; de ex. pentru f=13.85 -> V=13.85/1.385= 10 km/h ; f = 27.75 -> V=27.75/1.385 = 20.0 km/h). Daca aveti alte sugestii, le primesc cu multumiri. Numai bine !
*


Codul modificat pentru frecventmetru. D.nul Adi a folosit constanta 1.39, eu 1.385. Proiect in lucru ; am construit programatorul, sper sa reusesc sa programez corect ATTINY, sambata sper sa pot testa 'jucaria'. Multumiri pentru ajutoare !!!!
OldMan
QUOTE(costin_bad @ 16 Feb 2009, 16:24)
nu mi-ai raspuns la nici unul din cele 3 semne de intrebare din postul meu...
*



ti-am raspuns la intrebarile tale. probabil ca nu ti-am raspuns cum ai vrea tu sa auzi.
ianacosti
Oldman, imi place cablajul cum ti-a iesit!

Adi_stezar, am bagat codul in avr studio si la GIMSK = _BV(INT0) imi dadea 3 erori.

Am introdus la inceput #define GIMSK 59 (pe care am luat-o din tny2313def.inc .equ gimsk=0x3b , 59 e 3b in hexa) si mai am doar o eroare, de care nu pot sa scap. Eroarea nu pot sa o zic acum ca acasa nu am avr studio

Ce face chestia asta GIMSK = _BV(INT0) ? Am vazut ca e legat de intreruperi.

adi_stezar
@FRATELLO: Am vazut mai multa lume pe aici zicand ca semnalul de viteza da 5 impulsuri pentru fiecare metru parcurs, de aici rezulta constanta 1.3888888. Am zis ca o precizie cu 2 zecimale e suficenta (procesorul nu e chiar ff performant si nu am vrut sa am surprize ca e prea incet) si de aceea am ales 1.39.

@ianacosti: Nu mi-e foarte clar ce vrei sa faci in AVR Studio, eu foloseam AVR Studio doar pentru programare pentru care aveam nevoie doar de fisierul .hex
GIMSK e un registru unde se seteaza ce intreruperi externe e nevoie. In cazul asta a fost setat pe INT0 deoarece acolo e conectat semnalul de viteza, astfel de fiecare data cand se va schimba intrarea de pe 1 -> 0 sau de pe 0 -> 1 se va executa intreruperea SIGNAL(SIG_INTERRUPT0). Cred ca eroarea ta e legat de _BV() care e un MACRO definit in WinAVR si nu in AVR Studio.
Jack Daniel's
Cel mai usor e sa puneti un GPS la treaba si va arata viteza in timp real si cu o precizie destul de mare, foarte mare.
OldMan
si varianta finala a multimetrului
ianacosti
fratello, ai mai facut ceva cu vitezometrul?

daca te intereseaza am pus osciloscopul si pe firul de consum. constanta e 3,5

adica la

10l/h --- 35.08 Hz
11l/h --- 38.46 Hz
12l/h ---42,55 Hz
13l/h ---45.45 Hz
14----50
15---52.63
16---55.55 etc.

poate il faci sa afiseze si consumul
FRATELLO
Multumesc frumos pentru informatii ! Da, vitezometrul este gata, sper ca in acest week-end sa reusesc sa-l probez pe masina; nu prea am avut timp, m-am 'omorit' sa fac un senzor de soc pentru alarma. Voi posta aici rezultatele. Numai bine !
mariuscond
Off topic...
Uite schema de la senzorul alarmei mele ("am scos-o" eu...).
Are 2 praguri si functioneaza foarte bine.
Linga bobina este "montat" un magnet, prins de capacul carcasei cu 2 articulatii flexibile (de cauciuc).
Poate iti da idei...
[attachmentid=1627514463]
FRATELLO
Multumesc si tie Marius ! Da, aproximativ aceeasi schema am facut-o si eu ; bobina are 13,5 mH (cca.650 spire CuEm 0.1 mm/ferita !). Intr-adevar este foarte sensibil ; eu l-am facut doar cu 'o zona' pentru alarma din UCH.
FRATELLO
Am testat vitezometrul ; merge bine, totusi cred ca trebuie sa modific un pic acea constanta, fiindca este o diferenta de cca. 5 km/h fata de bord. GPS n-am avut pentru comparatie !
ianacosti
Pune si schema finala si softul, ca poate imi fac timp si ma apuc si eu.
IRONICK
Diferenta in minus este normala, in bord se calculeaza cu formula.
Daca ai ddt o sa vezi ca in mers viteza reala este mai mica decat in bord. Din aceeasi cauza viteza medie calculta de cb este mai mica decat cea afisata de ac ...
bygy007
la mine este diferenta de 10Km/h intre GPS si bord, bordul indicind in plus, masina are 300km
IRONICK
diferenta este variabila si creste in functie de viteza
FRATELLO
Schema si softul sunt in linkul prezentat anterior ; in plus in program am adaugat o linie :
Temp = Ovf1 * 65536 'Calc frequency
Freq = Temp + Counter1
Freq = Freq / 1.388
Cls 'Clear display
Locate 1 , 1
Freq1 = Str(freq)
Si pentru intrare am folosit divizor rezistiv 10K/100k si un Zenner de 5V1, ca in schema D-lui Adi_stezar. Numai bine !
TAM
QUOTE(b64chr @ 10 Feb 2009, 10:10)
Semnalul de la traductorul de viteza este sub forma de impulsuri. La fiecare metru parcurs emite 5 impulsuri. Semnalul merge la UCE injectie, la tabloul de bord si la radio (il captezi de unde ti-e mai usor).
*


Hi,
I looking informations about speed sensor of my logan (for improving cruise controle). I see here 5 puls/m but how is the signal ? Square ? How much peak to peak 0-12V? 0-5V?

Thanks and sorry for speaking english I'cannot write Romanian.
mariuscond
0-12V
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2024 Invision Power Services, Inc.