Sari la conținut
ELFORUM - Forumul electronistilor

Computer de bord MOTO+bord electronic!


Cilibiu

Postări Recomandate

Pana la urma sa rezolvat cat de cat afisarea temperaturi, variati maxime de +/-0.05 grade cea ce este acceptabil pentru mine.

Am testat acum partea de citire a turatiei motorului si citirea vitezei, ambele folosesc ca cititre frecventimetru.

Initial codul pentru citirea frecventei este mai jos, el este configurat pentru citirea la 1 secunda, afisarea facanduse tot la o secunda.

Dim Viteza As IntegerDim Turatie As IntegerConfig Timer0 = Timer , Prescale = 1024                     'Loop TimerConfig Timer1 = Counter , Edge = Rising                     'Frequency CounterConfig Timer2 = Timer , Prescale = 1024                     'Loop TimerConfig Timer3 = Counter , Edge = Rising                     'Frequency CounterEnable Timer2                                               'Timer interruptOn Timer2 Incr_ovf0                                         'Overflow RoutineEnable Timer1                                               'Counter interrruptOn Timer1 Incr_ovfldoTimer2 = 0                                                  'Reset counts  Counter1 = 0                                              'viteza  Counter3 = 0                                              'turometru   Ovf0 = 0                                                 'Reset overflows   Ovf1 = 0   While Ovf0 <= 60                                         'One second loop @ 16 MHz   nop   Wend   Disable Timer2                                           'Stop Timers   Disable Timer1   Disable Timer3   Tempa = Ovf1 * 65536                                     'Calc frequencyViteza = Tempa + Counter1Turatie = Tempa + Counter3loopendIncr_ovfl:   Incr Ovf1   ReturnIncr_ovf0:   Incr Ovf0   Return

Am zis ca este mult mai frumos ca viteza si turatia sa fie afisate cat de cat liniare nu o data la 1 secunda.

Asa ca am facut modificarea asta :

While Ovf0 <= 30                                         '500ms loop @ 16 MHz'adugat acesteaturatie=turatie * 2viteza=viteza * 2
Asa am injumatatit timpul de afisare. Indicatiile sunt corecte.

Totul bine pana aici , am zis sa fac loop la 100ms.

Aici a aparut problema afisari, variatiile foarte mari, chiar cu +/-20% din valoarea afisata.

 

Poate cineva sa ma ajute cu aceasta problema? Se poate modifica ceva ca sa fie afisarea ok? macar sa ajung la o afisarea la 250ms si as fi multumit. :da

 

Inca o problema ce am observat, la un loop de 500ms nu citeste frecente mai mari de 30khz.Oare care este problema?

Link spre comentariu
  • Răspunsuri 235
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • Cilibiu

    115

  • ratza

    19

  • Liviu M

    10

  • stefan_k

    10

Top autori în acest subiect

Imagini postate

Revin cu un detaliu. Am pus LM2678-ADJ in loc de 2x LM7805 si se pare ca ADC-ul a luato razna, iar in functie de consum, intre 80mA si 500mA tensiunea variaza intre 5V la 80mA si 4.2V la 500mA. Ca si consum este cat de cat acceptabil. 1W in ST/BY . Am renuntat la LM2678 si am pus un singur LM338, totul e stabil acuma, cu un mic radiator in full load are 70 grade, iar consumul in ST/by este de 1.8W.L.E Am terminat de verificat toate funtiile lui. Totul este Ok, singura "problema" sa ii zic asa ramane cu afisarea turometrului si a vitezei.Modificari:Afisarea in ST/BYAfisarea cand este cricul pusModificarea impulsurilor a le ledului "alarma".Abia astept sa ma apuc de "carcasa" lui. :freaza:

Link spre comentariu

Am rezolvat problema. Pe semnal SINE am ceva variati dar sa sper ca pe motor nu am variati asa mari, tinand cont ca este vorba doar de un impuls de scurta durata si nu semnal SINE.De maine ma apuc de carcasa lui, revin cu poze cand este gata. :freaza:

Link spre comentariu

Din cauza unui calcul gresit aveam acele variati in SINE. Acum nu am variati absolut deloc.Am crezut initial ca daca pun 10 in loc de 60 "While Ovf0 <= " o sa am un loop la 100ms, dar nu a fost asa, ca sa am un loop la 100ms trebuie sa pun "6". :jytuiyu Din cauza aceste probleme cu variatiile nu ma luat somnul in dimineata asta. Acum sper sa dorm linistit ca totul functioneaza corect 100%. :ras:

Link spre comentariu

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări