pulsin of pulsein probleem

Gestart door raf, 14 mei 2015, 11:18:21 AM

raf

hallo

ik heb voorlopig dit aan het werk maar ??? normaal moet ik een getal krijgen tussen de 600 en de 1200
maar ik krijg dus cijfers en letters op de display

hier de code die ik geschreven heb om dit te testen

Device 16F628A                ;Gebruik een 16F628A type
Config INTRC_OSC_NOCLKOUT, WDT_OFF, PWRTE_ON, LVP_OFF, MCLRE_OFF
Dim w3 As Dword
DelayMS 500                   ;LCD stabilisering

Cls              ;Wis eventuele oude tekst uit
While 1=1
PulsIn PORTB.1,1,w3       ;leeswaarde in variabele W3                 
Print At 1, 7, w3       ;Zet waarde W3 op regel 1 vanaf positie (kolom) 7
Print At 2, 1, "Hoe gaat ie?" ;Zet 'Hoe gaat ie?' op regel 2 vanaf het begin (= pos.1)
                    Wend
End     

en hier het resultaat
https://www.youtube.com/watch?v=BonHfHcISJc&feature=youtu.be
"hoe gaat ie "is om te controleren of de pic loopt en nu gaat nie goe LOL
als de stick normaal in het midden staat zou er dus een getal van rond de 800 moeten komen te staan

iemand een oplossing voor dit probleem want zoals het nu is kan ik eigenlijk iets meten of vergelijken


If I make mistakes in "spelling"
Remember it's the pen, that's bad
Don't lay the blame on me.

raf

ok het is me gelukt
er komen dus wel verschillende waardes maar die zijn niet zoals verwacht
de max zit rond 160 en de minimum zit rond de 130
maar zoals het nu is kan ik er mee leven en gaat het ook werken
met deze getallen kan ik dus verder het programma schrijven om de duiktanksturing te maken
probleem is dat ik een kleinere processor wilde gebruiken maar daar ik nog pootjes over heb kan ik nu andere zaken bij programmeren
zit te denken aan accu beveiliging maar dan niet zoals die van norbert dat hij mee invloed gaat hebben op de sturing
maar eerder als indicatie van de accu is nog vol genoeg om te varen
hier nu het programma zoals het nu is dus nog zonder sturing
Device 16F628A                ;Gebruik een 16F628A type
Config INTRC_OSC_NOCLKOUT, WDT_OFF, PWRTE_ON, LVP_OFF, MCLRE_OFF
All_Digital TRUE                                           
Xtal 4
Declare PortB_Pullups On
PORTB = %11111111             ;Maak alle poorten van PORTb hoog
TRISB = %11111111         
PORTA = %11111111             ;Maak alle poorten van PORTb hoog
TRISA = %11111000
Dim w3 As Dword
DelayMS 500                   ;LCD stabilisering
DEFINE PULSIN_MAX 1000
Cls              ;Wis eventuele oude tekst uit
While 1=1
PulsIn PORTB.1,1,w3       ;leeswaarde in variabele W3                 
Print At 1, 7, w3       ;Zet waarde W3 op regel 1 vanaf positie (kolom) 7
If w3 > 160 Then Print At 2, 14, "goed  "  ;stand op naarboven te komen
If w3 < 160 And w3 > 130 Then Print At 2, 14, "kan  " ;midden stand
If w3 < 130 Then Print At 2, 14, "slecht" ;stand om te duiken
Print At 2, 1, "Hoe gaat ie?" ;Zet 'Hoe gaat ie?' op regel 2 vanaf het begin (= pos.1)
                    Wend
End                           ;Einde programma

alleen blijft dus de vraag waarom die waardes zo laag blijven en als daar iemand een uitleg voor heeft hoor ik het graag
hier een filmpje waar je dus de waarde ziet veranderen
https://youtu.be/kYtkp89vGnc
If I make mistakes in "spelling"
Remember it's the pen, that's bad
Don't lay the blame on me.

raf

#2
de fout gevonden eindelijk
hé en zonder veel hulp beetje trots op mezelf dan maar 

Print At 1, 7, Dec w3

hier zat de fout en nu krijg ik wel mooie waarden die ik kan uit lezen
https://youtu.be/4P-5eS8gVw0
gr raf
If I make mistakes in "spelling"
Remember it's the pen, that's bad
Don't lay the blame on me.

raf

het mixen is gedaan en het werkt perfect
als de boot aan het duiken is en de watersensor detecteert  water dan stopt de pomp
leeg pompen kan dan nog wel
dit is dus een water voeler voor de duiktank en niet een lek detectie
https://youtu.be/jkKgWxHz9T8
If I make mistakes in "spelling"
Remember it's the pen, that's bad
Don't lay the blame on me.

Harm

Gefeliciteerd Raf
Sorry dat ik je bericht niet gezien heb, ik kijk hier niet meer.
Je kan beter een dag of wat zelf klooien dan wachten op antwoord.
Dat geeft een beter gevoel en geen tijdverlies.
Misschien dat er niemand antwoord door het mooie weer, maar daar twijfel ik zelf aan.  ;D ;D ;D

raf

ach harm na wat zoeken en wroeten toch de oplossing gevonden en het werkt
ps dat met die opto werkt nu ook al is het wel elke keer je de print voor een andere accu gebruikt terug in stellen
maar voorlopig werkt het juist genoeg en kan ik de schakeling als lion  afslag gebruiken voor de accu defect geraakt

gr raf
If I make mistakes in "spelling"
Remember it's the pen, that's bad
Don't lay the blame on me.

PeterC

Raf,

De meeste problemen lossen zich op door er even afstand van te nemen.  Zit je op een ei en geraak je er niet door?  Neem afstand en doe iets anders.  Binnen een mum van tijd zie je de oplossing en werkt het zoals verwacht.

Zit ik met een 'ei'?  Dan 'leg' ik dat en tijdens mijn toilet-moment kom ik nogal vaak tot constructieve oplossingen  ;)
Groetjes, Peter


raf

hoi Peter
ik krijg zo s'nachts van die eureka ideeën en dan moet ik naar de pc want anders weet ik het s'morgens niet meer 
nu wil ik nog een accu laag detectie maken maar de 16f628 heeft geen adc en daar moet ik dus een oplossing voor proberen te zoeken
lion accu's kunnen slecht tegen diep ontladen en daarom wil ik dus die detecteren voor hij leeg is
ik wil het met een opto coupler doen die dan uitgaat als de accu begint na te laten maar dan moet ik elke keer ik dit printje maak voor een andere boot de opto afregelen en dat is niet de bedoeling
maar ik geraak er wel al is het soms wel heeeeeeeel erg hard zoeken want echt niet alles staat in de data sheet hoor


gr raf
If I make mistakes in "spelling"
Remember it's the pen, that's bad
Don't lay the blame on me.

PeterC

Citaat van: raf op 14 mei 2015, 22:35:32 PM
...nu wil ik nog een accu laag detectie maken maar de 16f628 heeft geen adc en daar moet ik dus een oplossing voor proberen te zoeken...

Raf, 2015 zijn we nu en technologie evolueert heel snel.  Misschien eens kijken naar de specs van een 18F.  Een (vb) 18F2550 is een TGV wat betreft mogelijkheden in vergelijking met een 16F628 (= reeds vintage processor).  Backwards-compatible maar veel meer mogelijkheden (en vooral als je hem juist configureert: 48MHz!).
Groetjes, Peter


PeterC

Citaat van: raf op 14 mei 2015, 22:35:32 PM
...ik geraak er wel al is het soms wel heeeeeeeel erg hard zoeken want echt niet alles staat in de data sheet hoor

...In die datasheets staan de mogelijkheden van de controller maar niet de software-oplossingen.  Enig denkwerk en kennis wordt wel nog verwacht...

Het is nu eenmaal de kunst om die datasheets te kennen/interpreteren en te zien of je probleem met die processor op een zo een eenvoudig mogelijke manier kan worden opgelost.

Zie het zo: veel dames lezen elke week hun Libelle/Dag Allemaal/Weet-ik-wat-voor-roddelblad.  Lees elke week een datasheet van een processor en je Frank (Euro) gaat direct vallen: bij dat probleem heb ik die controller nodig  ;)   8)
Groetjes, Peter


conducteur

De datasheet begrijpen & gebruiken is vaak inderdaad van groot belang  ;)
Rian 2-Rail DCC NMBS TPIII
Grote Modeltreinruilbeurs Blankenberge Pasen 2016
Zaal Forum

raf

@ allen die mee lezen


een andere processor is niet altijd de oplossing want ik heb een 12f505 BV op 8Mhz
proton voor het programma is perfect maar de K150 programmer kan dat ding niet programmeren
en ik ga weer geen nieuwe programmer kopen omdat ik eens een pic moet programmeren
en die 4 Mhz is meer dan snel genoeg voor modelbouw gerelateerde sturingen

de water detector moet ik toch opbouwen met een transistor of fet want een pic zijn versterking is niet groot genoeg
dus bc 547 en een weerstandje en klaar waterdetector
dan een adc zou plezant zijn om de accu spanning te controleren want dan kon je mooi op een display kunnen laten zien hoeveel er nog in zit
maar eens onder water zie je niks meer op die display en is er maar een zaak belangrijk "is hij bijna leeg"
dan leeg pompen en naar boven met die handel zodat je boot nog veilig naar de kant kan komen.
de accu word in een boot toch niet verwisseld omdat hij soms mee deel uitmaakt van de constructie en dus alleen bij defect vervangen word
dan is het terug effe als je een heel ander type  steekt (bv lipo inplaats van nMha)de leeg stand programmeren door een potmeter in te stellen

snelheid speelt ook dus niet zo een rol en moet het sneller kan er nog altijd een externe Xtal gebruikt worden
het verschil tussen een duikboot en een vliegtuig is dat bij een duikboot alles veel trager gaat en de electronica dus tijd heeft om te reageren

gr raf 
If I make mistakes in "spelling"
Remember it's the pen, that's bad
Don't lay the blame on me.

Gerolf

Ik vermoed dat er adc's bestaan die via I2C of 1Wire communiceren  ;)
Temperatuurmeters in elk geval, dus lijkt het logisch dat een spanningsmeter ook bestaat ...
Groeten uit "Marche-en-Bières"   ** Modelspoor is plezant **   TPIII-H0-DC-Zelfbouw

raf

ja gerolf dat weet ik dat die temp meters bestaan maar ik moet spanning meten
en dit uit een 3S li-on
dat wil zeggen dat ik dus drie spanningen moet meten tegelijk
ik heb er een oplossing voor gevonden die te doen is hoor maar kost me 3 opto's en wat instel weerstanden
als ik er de plaats nog heb programmeer ik het mee in de pic maar voorlopig ga ik voor de algemene spanning die niet onder de 10.5 volt mag komen
als de opto dan uitgaat rond die spanning dan kan ik dat detecteren met de pic en das voldoende
ik wil rond de 3.5 volt per cel blijven maar is het nu 3.4 is het ook nog te doen
seffens plannetje posten van de opstelling

gr raf 
If I make mistakes in "spelling"
Remember it's the pen, that's bad
Don't lay the blame on me.

conducteur

Neem toch gewoon een PIC met ADC ingebouwd? Waarom zo ingewikkeld doen?
Rian 2-Rail DCC NMBS TPIII
Grote Modeltreinruilbeurs Blankenberge Pasen 2016
Zaal Forum