Flitspaalmelder verbeteringen

Postby jaap57 » Wed Mar 25, 2009 12:00 am

Hi Ben, Flowcode is best wel een leuke taal alleen het rammelt nog ietwat.
Tot nu toe heb ik met zekerheid kunnen vaststellen dat de opdracht right$() niet werkt. Daar komen telkens verschillende resultaten uit. Verder heb ik nog lang niet alle mogelijkheden benut van flowcode dus het is best mogelijk dat er nog meer bugs in zitten.

Nu ik dit printje klaar heb kan ik nog wat code veranderen en testen. Die andereop gaatjesprint had ik al ingebouwd.
De huidige code die ik geschreven heb geeft de keus tussen snelheid richting en hoogte of snelheid richting en coordinaten.
Helaas heeft het display daar te weinig caracters voor zodat de coordinaten maar met 1 cijfer achter de komma worden weergegeven. Dat is niet nauwkeurig genoeg voor het vaststellen van de positie van bijv. een flitspaal (+- 180 meter).
Dus zal ik nog een tweede programma hier publiceren dat de keuze geeft (schakelaartje) tussen snelheid richting hoogte of alleen maar de coordinaten die dan op twee regels worden weergegeven met een (theoretische) nauwkeurigheid van 1,8 meter.

Uiteraard houd ik mij aanbevolen als je dat transfert.exe gefatsoeneerd hebt. Het is een zeldzaam slecht geprogrammeerd programma. Zelf kon ik de moed even niet opbrengen om er aan te beginnen...
jaap57
 
Posts: 117
Joined: Thu Jan 02, 2014 3:31 pm

Postby schueler » Wed Mar 25, 2009 12:00 am

Met de functie right$() wordt er gerekend met de lengte van de string. Dat is een beetje tricky als het einde van de string niet goed is gedefinieerd. Eigenlijk zou een string altijd met een '\0' moeten zijn afgesloten maar dat gebeurt meestal niet. Kan aan de slordigheid van de programmeur zijn of van het interperter/assambler.

VB6 heb ik aan de praat en zal een dezer dagen het programma eens aanpassen. Ik heb het net even het origineel gecompileerd en het werkt nar behoren. Zal dus niet zo heel moeilijk zijn ( voor een hardware man ).


Om meer tekst op je LCD te krijgen kun je ook gewoon een 2x24LCD nemen uiteraard. Wordt dan wel niet ondersteund in simulatie mode met Flowode maar zal zeker wel werken.
Mijn bedoeling is om een 2x24 te gaan gebruiken zodat ik fatsoenlijk datum, tijd, kompas, snelheid en via een schakelaar coördinaten op het scherm kan zetten. Daarnaast wil ik niet dat mijn scherm volledig weg valt wanneer ik een flitspaal nader. Ik zou dan graag een apart blokje in mijn scherm willen hebben.

Om jouw werk miet te niet te doen zal ik voortborduren op jou code. Als je het niet erg vind vertaal ik het wel in het engels zodat andere mensen ( niet Nederlandstaligen ) er ook wat aan hebben .

Ben
schueler
 
Posts: 1433
Joined: Thu Jan 02, 2014 10:40 am

Postby jaap57 » Wed Mar 25, 2009 12:00 am

SchuelerMet de functie right$() wordt er gerekend met de lengte van de string. Dat is een beetje tricky als het einde van de string niet goed is gedefinieerd. Eigenlijk zou een string altijd met een '\0' moeten zijn afgesloten maar dat gebeurt meestal niet. Kan aan de slordigheid van de programmeur zijn of van het interperter/assambler.


Ja dat afsluiten met die nul is me bekend, maar ook als ik dat eigenhandig deed liep het in flowcode nog fout. Ik bleef vreemde uitkomsten krijgen.


VB6 heb ik aan de praat en zal een dezer dagen het programma eens aanpassen. Ik heb het net even het origineel gecompileerd en het werkt naar behoren. Zal dus niet zo heel moeilijk zijn ( voor een hardware man ).

Ik ben benieuwd.


Om meer tekst op je LCD te krijgen kun je ook gewoon een 2x24LCD nemen uiteraard. Wordt dan wel niet ondersteund in simulatie mode met Flowode maar zal zeker wel werken.
Mijn bedoeling is om een 2x24 te gaan gebruiken zodat ik fatsoenlijk datum, tijd, kompas, snelheid en via een schakelaar coördinaten op het scherm kan zetten. Daarnaast wil ik niet dat mijn scherm volledig weg valt wanneer ik een flitspaal nader. Ik zou dan graag een apart blokje in mijn scherm willen hebben.

Om jouw werk niet te niet te doen zal ik voortborduren op jou code. Als je het niet erg vind vertaal ik het wel in het engels zodat andere mensen ( niet Nederlandstaligen ) er ook wat aan hebben .


Als ik nu een flitspaalmelder zou maken (ontwerpen) dan zou ik het heel anders aanpakken. Om te beginnen met een processor die floating point berekeningen aankan en dan met heel andere software. Het zou ook veel leuker zijn als de melder aangeeft om wat voor soort controlle het gaat. Bijv traject snelheid, of verkeerslicht. Voor deze melder die nu op het printje zit had ik eigenlijk een 4x16 display besteld. Helaas waren de letters daarvan weer veel kleiner.Dus heb ik dat display maar bij de voorraad gestopt.
jaap57
 
Posts: 117
Joined: Thu Jan 02, 2014 3:31 pm

Postby schueler » Wed Mar 25, 2009 12:00 am

jaap57Als ik nu een flitspaalmelder zou maken (ontwerpen) dan zou ik het heel anders aanpakken. Om te beginnen met een processor die floating point berekeningen aankan en dan met heel andere software.


... uhm... floating point??? waar zou je deze nauwkeurigheid voor willen gebruiken? Ik heb al vele discussies met studenten gehad betreft floating point en fixed point. Als er veelvuldig berekeningen gemaakt moeten worden en met een bepaalde nauwkeurigheid is dat wel verstandig. Als je het maar af en toe nodig hebt is dat vaak niet aan te raden in verband met overkill ( ik kom uit de semiconductor hoek... ).
Het probleem zit hem hier eigenlijk in FlowCode. Deze ondersteund geen floatingpoint op een 8 bitter.
correctie: als je een float lib mee linked zou dit wel mogelijk zijn... Met dit voorbeeld leggen ze het een en ander uit...

Ik heb vele software routines geschreven op 51 processoren waar k gewoon floatingpoint berekeningen op los liet. het duurt misschien een aantal klokslagen maar als je dat kunt veroorloven is een floatingpoint unit niet nodig.

Mijn voorkeur gaat nog steeds gewoon naar C code uit. Dat is duidelijk voor iedereen en kan in principe door elke compiler gecompileerd worden. Iedereen kan dus zijn eigen smaak gebruiken ( avr-c, pic-c, gcc-pic, etc. ).


Ben

edit: correctie op flowcode en floatingpoint'
schueler
 
Posts: 1433
Joined: Thu Jan 02, 2014 10:40 am

Postby jaap57 » Wed Mar 25, 2009 12:00 am

Die floating point berekeningen had ik nodig voor het detectiegebied. In mijn software wordt dat welliswaar aangepast en het werkt leuk maar op koersen 330-150 en 060-240 werkt het minder mooi.
In boldriehoeksmeting is het wel fijn als je ook nog een sinus en cosinus functie in je programmeertaal hebt

Ja, Flowcode is nog lang niet volwassen. Maar er wordt aan gewerkt dacht ik
jaap57
 
Posts: 117
Joined: Thu Jan 02, 2014 3:31 pm

Postby schueler » Wed Mar 25, 2009 12:00 am

Ze zijn inmiddels bij versie 3.6.nogwa beland...

zal eens in de lijst van revisies kijken wat er allemaal veranderd is sinds mijn versie


Ben
schueler
 
Posts: 1433
Joined: Thu Jan 02, 2014 10:40 am

Postby schueler » Wed Mar 25, 2009 12:00 am

Goed......

Weer een trauma rijker!!!

Ik dacht het nu wel werkend te krijgen...
Blijkt de compoort functie niet te werken.

Die Fransen hebben maar de helft van de software aangeleverd waar je dus nog alles erbij moet gaan zoeken. Erg vervelend dus.

Ik kan het dus niet omschrijven.
Als er iemand is die dat wel kan zal ik even de wijziging doorgeven wat doorgevoerd moet worden.

          Debut = "Num"
Debut_Enreg = InStr(Ligne, Debut)


vervangen door

          Debut = ";"
Debut_Enreg = InStr(Ligne, Debut)
If Debut_Enreg < 4 Then
Debut_Enreg = 0
Else
Debut = ", "
Debut_Enreg = InStr(Ligne, Debut)
If Debut_Enreg < 10 Then
Debut = ". "
Debut_Enreg = InStr(Ligne, Debut)
If Debut_Enreg < 4 Then
Debut_Enreg = Debut_Enreg
Else
Debut_Enreg = 0
End If
Else
Debut_Enreg = 0
End If
End If



Ben
schueler
 
Posts: 1433
Joined: Thu Jan 02, 2014 10:40 am

Postby jaap57 » Thu Mar 26, 2009 12:00 am

Misschien kan Thijs de volledige bron-software bij onze geachte zuidelijke mede europeanen los peuteren....?
jaap57
 
Posts: 117
Joined: Thu Jan 02, 2014 3:31 pm

Postby jaap57 » Thu Mar 26, 2009 12:00 am

Hierbij de PIC software waar ik eerder over sprak.
Het is gelijk aan de laatste software die ik hier postte.
Het enige verschil is dat in de ene stand van de schakelaar niet meer de snelheid, richting en positie wordt weergegeven maar alleen de positie. Die positie wordt echter wel met 4 cijfers achter de (minuten)komma aangegeven. Dit is de grootst mogelijke nauwkeurigheid van de GPS-ontvanger. Dat betekent in de praktijk een nauwkeurigheid van enkele meters. (was voorheen +- 180meter).

Met de schakelaar in de andere stand wordt gewoon zoals vroeger de snelheid, richting en hoogte aangegeven.
Attachments

[The extension fcf has been deactivated and can no longer be displayed.]

[The extension hex has been deactivated and can no longer be displayed.]

jaap57
 
Posts: 117
Joined: Thu Jan 02, 2014 3:31 pm

Postby schueler » Thu Mar 26, 2009 12:00 am

De oplossing is op zich niet echt nodig als je het opslaat als Medion formaat maar is volgens mij wel netter omdat je dan ook andere bestanden die vrijwel gelijk zijn op commentaartekst na in kunt lezen.
Phoe... da's nog eens en zin zeg... moet hem zelf twee keer lezen om het te snappen.


Maar het zou wel fijn zijn als mensen broncode vrij geven dat ze dan ook alles vrij geven en ook alle benodigde bestanden bij voegen. Nog een verzoek is om dan maar meteen even te vermelden welke programma en/of compiler ze gebruiken met welke versie nummer. Dit dan ook meteen van de bibliotheken.
Scheelt een hoop uitzoekwerk en frustratie.


Ben
schueler
 
Posts: 1433
Joined: Thu Jan 02, 2014 10:40 am

PreviousNext

Return to 2008-11 Flitspaalmelder

Who is online

Users browsing this forum: No registered users and 1 guest