Super Simple Sound Doppler Peiler

Hardware en software.
Bericht
Auteur
Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Re: Super Simple Sound Doppler Peiler

#61 Bericht door Dopp »

Hallo Allemaal,


Als nog een paar tips over dopplerpeilen.


Van belang is ook de vorm en liniariteit
van de FM Detector S-curve.

Een FM Detector is in feite een frequentie naar spannings omzetter.

Met name als de deviatie groot is en je de uiteinden (toppen) van de
S-Curve bereikt kan de peiling foutief zijn.

(Dit is op te lossen door de doppler een rotatie linksom en volgende rotatie
rechtom te laten maken. Maar dit vereist een ingewikkeldere hardware
en een extra software trigger impuls)

Ook van grote invloed is de doorlaat curve van de midden frequent filters.

Omdat het amplitude en fase gedrag van middenfrequente filters
van invloed is op de dopplerpeiling.


Daarom is het goed de ontvanger steeds af te stemmen op het zelfde
punt van de MF Filter doorlaat.


Ideaal zou zijn een AFC instelling denk ik.
(AFC = Automatic Frequency Controle).
Er zijn tegenwoordig maar weinig ontvangers meer met een AFC.


Je kunt goed zien of je Mf Filters keurig fase en amplitude rein zijn door
met de dopplerpeiler een station te peilen en dan langzaam aan de VFO te draaien.

Als je in FM Smallband de VFO 1 a 2 kHz verdraaid moet de peilings richting het zelfde
blijven.

Als dit niet het geval is kun je misschien de MF beter afregelen of een beter
MF filter in de FM-Rx plaatsen.



Groeten,

PA3BNX
Lodewijk
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Re: Super Simple Sound Doppler Peiler

#62 Bericht door Dopp »

Hallo Allemaal,

Hierbij een foto van de pe0ssb stand alone sounddoppler

hardware driver.

Dit is dus slechts een gedeelte van de pe0ssb dopplerpeiler

de 455 khz ocilator en de 4060 ripple counter

de stroom bron en de rf doorvoer

en het audio lowpass filter voor de input naar de geluidkaart.

Het princiepe schema kun je vinden in SoundDoppler.exe onder menu Info

73's

PA3BNX
Lodewijk
Bijlagen
DSC00841.JPG
Laatst gewijzigd door Dopp op 09 sep 2011, 18:11, 1 keer totaal gewijzigd.
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Re: Super Simple Sound Doppler Peiler

#63 Bericht door Dopp »

Hallo Allemaal,

Hierbij een inside view van de pe0ssb sounddoppler hardware driver.

Op de site van pe0ssb kun je een simpelere versie vinden
met alleen een ne555 fet en het lowpass filter.


Groeten,
PA3BNX
Lodewijk
Bijlagen
DSC00842.JPG
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Re: Super Simple Sound Doppler Peiler

#64 Bericht door Dopp »

Hallo Allemaal,


Vandaag weer zitten programmeren aan MyMapping.exe met name wat betreft
GPS + Agrelo Mixed aan de USB of RS232 zoals
de VRZA2011 doppler en Picodopp geven.

Ik heb bedacht dat MyMapping ook een packet.txt file moet kunnen
genereren zodat deze dopplers ook mee kunnen doen met PA7FRN googlemaps
met de upload client van PA7FRN

http://doppler.freeradionetwork.nl/

Als het zover is binnekort komt de nieuwe versie
MyMapping120.zip op de site van PI4WAG


73's
Lodewijk
PA3BNX
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Re: Super Simple Sound Doppler Peiler

#65 Bericht door Dopp »

Hallo Allemaal,


Tsja nog steeds geen MyMapping120.zip op de site van PI4WAG


Vandaag weer zitten stoeien met de logging files onder MyMapping

En weer verbeterde routines voor GPS+Agrelo mixed aan geboden op
de compoort zoals PicoDopp en VRZA doppler doen.

De Pelorus van Agrelo Comport heeft nu ook een uitgemiddelde groene
Bug (groene stip rond de pelorus) gekregen net als in SoundDoppler.

Verder hoop ik dat de VRZA Doppler ook snel een squelch closed
agrelo commando krijgt zoals
%999

Dan kan mijn software veel makkelijker bepalen wanneer
de uitgemiddelde waarde te displayen en packet.txt te schrijven
voor de DopplerUploadClient.exe software van PA7FRN

Nu moet ik als ik wil uitmiddelen en multipath supressing
maar gokken dat als ik x secondes
na eerste peiling dat de squelch closed is
alles binnen heb en het uitgemiddelde resultaat weergeven
in MyMapping en Packet.txt schrijven.

Die x Secondes moet je opgeven in F8 AgreloDialog.

Groeten en suk6
PA3BNX
Lodewijk
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Re: Super Simple Sound Doppler Peiler

#66 Bericht door Dopp »

Hallo Allemaal,


Onder tussen staat MyMapping120.zip op de site van PI4WAG


Maar ik heb alweer verbeteringen zitten maken

Dus MyMapping121.exe


Whats new!

In GPS + NMEA zoals VRZA2011 Doppler geeft via een compoort
heb ik nu ook de Agrelo Pelorus F9 uitgerust met een average bug.

Groene circel om de pelorus.

Het %999 als SquelchClosed signaal is geimplementeerd
En er is een snelheids label recht boven aan de kaart
wat de snelheid in km aangeeft.

Als je geen %999 als squelchClosed signaal geeft
geld bij uitmiddeling gewoon de maximale uitmiddelingstijd
zoals je kunt instellen onder AgreloDialog F8

Als je boven de Minimale GPS Speed zit dan is het label groen
en zal de peiling dus geplot worden en anders is het rood
dwz onvoldoende snelheid en onnaukeurige GPS kompas uitlezing
zodat er dan geen peiling wordt gezet op de kaart.

Omdat het as zondag ballon vossen jacht is bij hoge uitzondering
MyMapping121.zip hier te downloaden.

Helaas is het me nog niet gelukt om in vb2005
DDE links te maken Dat schijnt te moeten met een
Wrapper.

De DopplerUploadClient.exe van PA7FRN werkt
op het moment alleen met DDE linkjes en niet
met packet.txt als file.

Dit veranderd in de toekomst dus nog.

MyMapping121.zip uitpakken in de SoundDoppler Map
is voldoende.

Je hoeft verder niks te installeren.
Het schrijft niet in de windows Registry



73's
PA3BNX
Lodewijk
Laatst gewijzigd door Dopp op 16 sep 2011, 18:07, 1 keer totaal gewijzigd.
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Re: Super Simple Sound Doppler Peiler

#67 Bericht door Dopp »

Hallo Allemaal,



Vandaag 11 september mee geluisterd en gepeild op 145450 kHz en FT817 met
de SuperSimpleDopplerPeiler met pe0ssb switcher unit
en mijn oude roanooke doppler met 16 leds op 145475 kHz met T813 VHF RX


Het peilen ging uitstekend.
Beide binnenhuis peilers gaven steeds ongeveer de zelfde richting aan.

Gaaf om te zien dat de SoundDoppler prima uitmiddeld en de foutieve
peilrichtingen door reflexies etc mooi onderdrukt.

De groene average bug gaf steeds een keurig steady richtings signaal.

Toch heb ik weer een paar verbeteringen weten aan te brengen
in MyMapping121.zip.

Met name in het gps + agrelo mixed input signaal via compoort.

Verbeterd heb ik:
De agrelo pelorus geeft een rode center punt zodra er %999 als
agrelo signaal binnen komt of de average tijd verstreken is en er geen frisse
agrelo data binnenkomt.

Ook heb ik verbeterd de weergave van de laatste peiling als je het pelorus
formulier sized.

En nog een klein foutje in het tekenen van de voor laatste pijl van zwart naar rood
en de laatse pyl zwart als je reeds meer dan 60 peilingen in het geheugen had staan.

Maar al deze optische veranderingen hebben geen invloed op het gewone peilen.

Ik ben benieuwd naar ervaringen van anderen met mijn software na de ballonvossenjacht 2011.

Als ik zover ben komt er een MyMapping122.zip op de site van PI4WAG.

Nu moet ik zien dat ik SoundDoppler.exe om schrijf naar SoundDopplerNet.exe
voor volgend jaar.

Ben al een heel eind opweg maar heb problemen met de IntPtr en Marschalling
in de .Net talen om toch gebruik te kunnen maken van de winmm.dll voor geluid input.

In de SoundDopplerNet.exe zit al werkend het GPS.exe programma.
Laatst gewijzigd door Dopp op 03 okt 2011, 17:53, 1 keer totaal gewijzigd.
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Re: Super Simple Sound Doppler Peiler

#68 Bericht door Dopp »

Hallo Allemaal,


Nog wat code regels betreffende wat ik aan het
optimaliseren ben in MyMapping.exe betreffende
de Gps+Agrelo ProcessGPSAgreloMain Subroutine.

Deze Sub runt iederekeer als er nieuwe Data binnenkomt van de compoort

Deze Sub kan ook worden aangeroepen door afspelen van de Logfile GPSAgreloLog.txt
En dan wordt de uitmiddelings tijd berekend uit de opgeslagen
tyd in de GPS NMEA strings door de bool bTimer true te setten

Main FLow of Subroutine
------------------------

De compoort data in 'myval' wordt uitgepakt
in de Functie's

ExtractGPRMC
ExtractGGA
ExtractRMZ
ExtractAgrelo

FillGPSlblPacket Deze Sub plaatst de laatste GPS + Agrelo onderaan in het gele tekst label

Daarna word de Longitude, Latitude, PeilGraden, Lengtepijl en Altitude op geslagen
in de Globale multidimensionele array arrStoredPacketData
In Globale Multidimensionele arrCallSign wordt opgeslagen CallSign en eventuele andere boodschappen

De variable ArrayCounter = globaal en bepaald welk record in de arrayStoredPacket en arrCallsign aktueel is
Als de Arraycounter wordt verhoogd word in dit array element direct de Longitude en Latitude geschreven
Omdat ik niet weet of in 'myval' steeds de laatste Longitude/Latitude aanwezig zijn.



En daarna wordt als de Squelch = 2 (Dus geopend en daarna gesloten)
Als de Squelch = 2 dan wordt de arraycounter met 1 verhoogd.
en alles op het scherm getekend met de Sub DrawAll

Zoals je ziet best gecompliceerd allemaal.

Code: Selecteer alles

''-----------------------------------------------------------------------------------------------------------------------
 Public Sub ProcessGpsAgreloMain(ByVal myval As String, Optional ByVal bTimer As Boolean = False)
        ''ToDo
        ''@29-05-2011
        ''@31-05-2011
        ''@03-06-2011
        ''@06-06-2011
        ''@28-06-2011
        ''@11-08-2011
        ''@24-08-2011
        ''@04-09-2011
        ''@08-09-2011
        ''@12-09-2011        

        ''Call this from A Sub that gives all the comport data

        ''Myval must contain the ComportData
        ''Agrelo %999 = Implemented as Squelch Closed        

        ''------------------------------------------------
        ''bTimer used if called from LoadAndPlayGpsAgreloLog
        ''bTimer = true if running from file lines from GpsAgreloLog.txt  strGpsAgreloLogging         
        ''Try to use the time from the $GPRMC string (GpsTime)
        ''for determing the opentime / MaxGPSAveragingTime 
        ''-------------------------------------------------

        ''String
        ''Backup old strings RMC, GGA, PGZ and Agrelo 
        Static lc As String
        Static lg As String
        Static lz As String
        Static la As String

        ''Static
        Static SquelchOpen As Integer ''0 = Closed, 1 = Close2Open open, 2 = Open2Closed
        Static GPSCompassOld As Single = 0 ''Degrees
        Static StartTime As Double = 0 ''Seconds

        ''What it the initial StartTime the first time ?? zero ?

        ''Bool
        Dim bClosedByAgrelo As Boolean = False

        ''Integer
        Dim x As Integer = 0


        ''Float
        Dim z As Single
        Dim OpenTime As Double

        ''Nothing ToDo
        If PortCFG = 0 Then Exit Sub
        If myval = "" Then Exit Sub

        ''Reset the timer
        If bTimer Then
            If SquelchOpen = 0 Then StartTime = CalcGpsTime2Seconds(GpsTime)
        Else
            If SquelchOpen = 0 Then StartTime = Timer
        End If

        ''Calc OpenTime
        If bTimer Then
            OpenTime = CalcGpsTime2Seconds(GpsTime) - StartTime
        Else
            OpenTime = Timer - StartTime
        End If

        ''bNewDataAgrelo set from Sub form1 GetComportData and  Sub LoadAndPlayGpsAgreloLog

        If bNewDataAgrelo Then

            bNewDataAgrelo = False

            ''The Terminal Screen
            If My.Forms.Form1.TerminalToolStripMenuItem.Checked Then
                Call Terminal(myval)
            End If

            If bGPRMC Then
                ''Extract GPS 
                bNoGpsPlot = False
                My.Forms.Form1.NoGPSPlotToolStripMenuItem.Checked = bNoGpsPlot
                My.Forms.Form1.lblSpeed.Visible = True
                If ExtractGPRMC(myval) Then
                    ''Try to plot the speed here in km of the GPS
                    Call AdjustLblSpeed()
                    

                    ''Backup last GpsCompassOld
                    If SquelchOpen = 0 And GpsCompass <> cNoDegrees Then GPSCompassOld = GpsCompass
                End If
                x = 1
            Else
                bNoGpsPlot = True
                My.Forms.Form1.NoGPSPlotToolStripMenuItem.Checked = bNoGpsPlot
                My.Forms.Form1.lblSpeed.Visible = False
            End If

            If bGPGGA Then
                ''Extract GGA Altitude
                arrStoredPacketData(ArrayCounter, 4) = ExtractGPGGA(myval)
                Call ShowGpsAltitude() ''Optical distance dialog3 label  
                x += 2
            End If

            If bPGRMZ Then
                ''Extract RMZ Altitude
                arrStoredPacketData(ArrayCounter, 4) = ExtractPGRMZ(myval)
                Call ShowGpsAltitude() ''Optical distance dialog3 label  
                x += 2
            End If

            If bAgrelo Then
                ''Extract Agrelo %xxx
                If ExtractAgrelo(myval) Then
                    x += 4

                    Select Case SquelchOpen
                        Case 0 ''Set
                            ''Never set if %999   
                            If CSng(Val(strLastAgrelo.Substring(1, 3))) <> cNoDegrees Then
                                If bTimer Then
                                    StartTime = CalcGpsTime2Seconds(GpsTime)
                                Else
                                    StartTime = Timer
                                End If
                                SquelchOpen = 1
                            End If
                        Case 1 ''SquelchOpen
                            ''There is a squelch closed from Extract Agrelo %999
                            If CSng(Val(strLastAgrelo.Substring(1, 3))) = cNoDegrees Then
                                bClosedByAgrelo = True
                            End If
                    End Select
                End If
            End If

        End If

        ''Save Gps GPRMC GPGGA PGRMZ and Agrelo to file
        ''Reduce data as much as possible
        ''@09-06-2011

        If bGpsAgreloLogging Then
            myval = ""
            If lc <> strLastGPRMC And strLastGPRMC <> "" Then myval = strLastGPRMC & vbCrLf
            If lg <> strLastGPGGA And strLastGPGGA <> "" Then myval &= strLastGPGGA & vbCrLf
            If lz <> strLastPGRMZ And strLastPGRMZ <> "" Then myval &= strLastPGRMZ & vbCrLf
            If la <> strLastAgrelo And strLastAgrelo <> "" Then myval &= strLastAgrelo & vbCrLf

            ''Backup
            lc = strLastGPRMC
            lg = strLastGPGGA
            lz = strLastPGRMZ
            la = strLastAgrelo

            ''Write to filename strGpsAgreloLogging
            Call WriteGpsAgreloLog(myval)
        End If


        ''===========================================================================================================

        Select Case x
            Case 0, 1, 2, 3
                ''Nothing
                Call FillGPSlblPacket()
                Exit Sub
            Case 4, 6
                '4 = Agrelo Only
                '6 = Agrelo and (GPGGA or GPRMZ)
                'Put Callsign And strcNoGpsRx
                'Put Mouse Wheel or Middle Mouse Click coordinates here
                'bAgreloAveraging and bMultiAverage and %999 SquelchClose check cNoDegrees
                'No GpsSpeed check now ''Because there is no GPSSpeed available

                ''Manipulate arrCallsign() and arrStoredPacketData()
                arrCallSign(ArrayCounter, 0) = strCallSign
                If bGPGGA Or bPGRMZ Then
                    arrCallSign(ArrayCounter, 1) = strcWhoops1
                Else
                    arrCallSign(ArrayCounter, 1) = strcNoGpsRx  ''Needed in Sub GPRMCAgrelo2Packet
                End If

                ''Plot it if  on MyMapping if bNoPlot = True
                ''It doesn't plot if strcGpsOn not found.
                If bNoGpsPlot Then
                    arrCallSign(ArrayCounter, 1) &= strcStationairyPlot & strcGPSOn
                End If

                arrStoredPacketData(ArrayCounter, 0) = XFixDecimalCfg
                arrStoredPacketData(ArrayCounter, 1) = YFixDecimalCfg


                ''------------ToDo----------------Not okay yet----------

                ''Check MultiPath
                ''Check OpenTime
                ''Check %999 ClosedByAgrelo
                ''Check SquelchOpen

                If bAgreloAveraging Then
                    If OpenTime > MaxGPSAveragingTime Or bClosedByAgrelo Then
                        If SquelchOpen = 1 Then ''If Squelch Open 
                            SquelchOpen = 2 ''Close the squelch
                        End If
                    End If

                    ''MultiPath Now
                    ''Do nothing yet
                    If bMultiAverage Then
                        Call FillGPSlblPacket()
                        Exit Sub
                    End If

                Else
                    ''Just One Agrelo heading
                    If SquelchOpen = 1 Then SquelchOpen = 2
                End If

            Case 5, 7
                ''GPRMC and Agrelo and or PGRMZ/GPGGA
                ''Check Multipath if bAgreloAveraging 
                ''Check GPSSpeed
                ''Check Cource Changed
                ''Check SquelchOpen time  
                ''GpsValide A = Ok V = not Ok

                arrCallSign(ArrayCounter, 0) = strCallSign

                If (bMultiAverage And bAgreloAveraging) Or GpsValide <> "A" Then
                    ''Don't Display Yet
                    Call FillGPSlblPacket()
                    Exit Sub
                End If

                If MinGpsSpeed > 0 Then
                    If GpsSpeed <= MinGpsSpeed Then
                        ''Driving to slow for good GPS ComPass
                        ''Reset
                        Call AverageMultipath(0, 0, True)
                        Call FillGPSlblPacket()
                        SquelchOpen = 0
                        Exit Sub
                    End If
                End If

                ''Check Cource Change 
                ''Where to set/backup GPSCompassOld  
                ''If squelch = 0 
                ''or Max Cource Change happend 

                If GPSCompassOld > 270 And GpsCompass < 90 Then
                    z = ((360 - GPSCompassOld) + GpsCompass)
                    GoTo further
                End If

                If GpsCompass > 270 And GPSCompassOld < 90 Then
                    z = ((360 - GpsCompass) + GPSCompassOld)
                    GoTo further
                End If

                ''If not found do this
                z = Math.Abs(GPSCompassOld - GpsCompass)

further:

                If z > MaxCourseDeviation Then
                    ''Reset
                    Call AverageMultipath(0, 0, True)

                    ''Put last heading again in AvDegrees
                    If ExtractAgrelo(myval) Then
                        ''Reset the timer
                        If bTimer Then
                            StartTime = CalcGpsTime2Seconds(GpsTime)
                        Else
                            StartTime = Timer
                        End If
                        If GpsCompass <> cNoDegrees Then GPSCompassOld = GpsCompass ''Backup Set Only here
                        SquelchOpen = 1
                        Call FillGPSlblPacket()
                    Else
                        SquelchOpen = 0
                        If GpsCompass <> cNoDegrees Then GPSCompassOld = GpsCompass ''Backup Set Only here
                        Exit Sub
                    End If

                End If

               
                If bAgreloAveraging Then
                    If OpenTime > MaxGPSAveragingTime Or bClosedByAgrelo Then
                        ''Reset
                        If SquelchOpen = 1 Then
                            SquelchOpen = 2 ''Squelch Close
                        End If
                    End If
                Else
                    ''Just One agrelo heading 
                    If SquelchOpen = 1 Then SquelchOpen = 2
                End If

        End Select

        ''----------------------------------Show Bearing---------------------------------------------------

        Call FillGPSlblPacket()

        ''Remember Only print If SquelchOpen = 2 
        ''0 = Closed, 1 = Close2Open open, 2 = Open2Closed  

        If SquelchOpen = 2 Then

            ''Set the autoClearTimer
            If AutoClear > 0 Then StartAutoClear = Microsoft.VisualBasic.Timer

            ''@04-07-2011
            ''@10-08-2011
            ''Always write LocalPacket.txt and / or  Upload it
            ''arrFtpProperty(6) = "False" ''Get
            ''arrFtpProperty(7) = "False" ''Put 
            ''Create from GPSData and AgreloData  LocalPacket.Txt Format

            ''ArrowLength from cfg file or from Agrelo Dialog F8
            arrStoredPacketData(ArrayCounter, 3) = CSng(ArrowLength)

            Call ftpPutOnlyWritePacketTxt(GPRMCAgrelo2Packet(ArrayCounter))

            ''Make from GPS GPRMC GPGGA/PGRMZ and Agrelo a Packet.txt file and ftpPut
            If CBool(InStr(1, arrFtpProperty(7), "True")) Then
                Call ftpPutPacketTxt()
            End If

            ''PA7FRN Upload Client Packet.txt
            If bGpsAgreloPacketTxt Then
                Debug.Print(GPRMCAgrelo2Packet(ArrayCounter))
                Call WritePacketTxt(GPRMCAgrelo2Packet(ArrayCounter))
            End If

            ''PA7FRN DDE Packet.txt
            If bGpsAgreloPacketTxtDDE Then
                Call SendPacketTxtDDE(GPRMCAgrelo2Packet(ArrayCounter))
            End If

            ''Always Reset AverageMultipath
            Call AverageMultipath(0, 0, True) ''Reset


            If ArrayCounter = UBound(arrStoredPacketData) - 1 Then
                ''Redraw all Arrays are full So need to get rid of old arrows
                bResizePict1 = True
                My.Forms.Form1.PictureBox1.Refresh()
                ''This also Call Sub DrawAll in PictureBox1 Paint_Event

            Else
                ''Draw on PictureBox from arrCallSign and arrStoredPacketData
                Call DrawAll()
            End If


            If arrStoredPacketData(ArrayCounter, 0) <> 0 Or arrStoredPacketData(ArrayCounter, 1) <> 0 Then
                If CheckDegreesLengthRange(ArrayCounter) Then

                    ''Increase ArrayCounter
                    ArrayCounter += 1
                    If ArrayCounter > UBound(arrStoredPacketData) - 1 Then
                        ArrayCounter = 0
                    End If

                    ''Try Now to set next lat and long from last GPS latlong
                    ''This can happen if not fast enough there is a new $GPRMC
                    ''Only do this from My Callsign
                    ''What to do if other callsign there ?
                    If bGPRMC And GpsValide = "A" Then

                        Select Case ArrayCounter
                            Case Is = 0
                                x = 60
                            Case Is >= UBound(arrStoredPacketData) - 1
                                x = 0
                            Case Is > 0
                                x = ArrayCounter - 1
                        End Select

                        If arrCallSign(ArrayCounter, 0) = strCallSign Then
                            ''Stored  Long, Lat, Degrees, ArrowLength, Altitude
                            arrStoredPacketData(x, 0) = arrStoredPacketData(ArrayCounter, 0)
                            arrStoredPacketData(x, 1) = arrStoredPacketData(ArrayCounter, 1)
                            arrStoredPacketData(x, 2) = cNoDegrees
                            arrStoredPacketData(x, 3) = 0
                            arrStoredPacketData(x, 4) = arrStoredPacketData(ArrayCounter, 4)
                        End If

                    End If

                End If
            End If


            SquelchOpen = 0 ''Always close the squelch after showing.
            ''SquelchOpen must be static
            ''Now the OpenTime = set next time it runs

        End If

    End Sub

''----------------------------------------------------------------------------------------------------------------------------------------

Okay dit is de Main routine voor processen van de Compoort Data Dus GPS NMEA + Agrelo Mixed.

Ik snap dat misschien niet alles duidelijk is maar voor de echte diehards misschien toch leuk om te bekijken.


Maar hopelijk geeft het wat inzicht in de structuur en werking van MyMapping.exe als je werkt met
bv VRZA 2011 Doppler, PicoDopp, Ve2emm of N0GSG Doppler peiler aan gesloten op de Compoort van de PC.
Laatst gewijzigd door Dopp op 03 okt 2011, 17:52, 1 keer totaal gewijzigd.
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Re: Super Simple Sound Doppler Peiler

#69 Bericht door Dopp »

Hallo Allemaal,


Ik heb versie MyMapping122.zip klaar
en hij komt soon op de site van PI4WAG

Weer teken routines verbeterd.

Met GPS + Agrelo gemixed op een compoort
zoals picodopp en VRZA2011 Doppler
moet het nu toch erg leuk werken.

Vandaag ook nog een onhebbelijkheid ontdekt in
SoundDoppler.exe

Namelijk bij ruis ontvangst
die toch een beetje dopplertone amplitude oplevert
en meer dan 1 zerocrossing heeft
wordt de file Packet.txt geupdate iedere keer.
Ook met uitmiddelen aan.
Dat wordt dus gefixed in volgende versie
SoundDoppler.exe

Geen nieuwe Packet.txt files meer als multipath detect
aan gevinkt is en meer dan 1 zerocrossing in SCF output signaal
zit.

Als je ook uitmiddelen aan hebt wordt er met zerocrosssing meer dan 1
Ook niet meer uitgemiddeld.

Reduceren van zoveel mogelijk peilingen maakt weergave op
een kaart duidelijker en beter.

Nou dat ga ik morgen ofzo programmeren in SoundDoppler.exe

73's
PA3BNX
Lodewijk
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Re: Super Simple Sound Doppler Peiler

#70 Bericht door Dopp »

Hallo Allemaal,

20-09-2011
Vandaag in SoundDoppler118.exe zerocrossing detect in uitmiddelen
gemaakt zodat de als er teveel zerocrossings zijn
in een peiling deze niet meer mee uitgemiddeld wordt.
Ook de Edit Demo1 routine verbeterd zodat dat nu ook werkt
met Packet.txt

Verder gewerkt aan MyMapping125.exe
21-09-2011
Je kunt nu met F6 Optical distance
als je klikt een circel tekenen op de plek van de
laatste klik.

MyCircle onder F6.

Speciaal op aanvraag van PA0CVW


Nu werkt PacketLog.txt ook onder UI-View32
in de play log file mode van UI-View32.

Het Calc distance F5 werkt nu
Met Cross hair and Hand icons.

Ook gefixed een time out als je werkt via compoort met alleen Agrelo
aan dus zeg maar VRZA Doppler zonder GPS.


En het moet werken!


30-09-2011
MyMapping heeft een Status balk nu
En nog wat Bugjes gefixed

02-10-2011
03-10-2011
StatusStrip onderkant programma weer verbeterd.

Groeten en Suk6
PA3BNX
Lodewijk
Laatst gewijzigd door Dopp op 04 okt 2011, 18:06, 8 keer totaal gewijzigd.
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Re: Super Simple Sound Doppler Peiler

#71 Bericht door Dopp »

Hallo Allemaal,

Voor de liefhebbers nog twee YouTube linkjes van
automatische HF Peilers .


http://www.youtube.com/watch?v=vm_giyQM ... re=related
http://www.youtube.com/watch?v=OxcY9hPw ... re=related


73's
PA3BNX
Lodewijk
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Re: Super Simple Sound Doppler Peiler

#72 Bericht door Dopp »

Hallo Allemaal,


Vandaag nog wat zitten spelen met SoundDoppler en MyMapping


Geinig was dat ik kon peilen en plotten en tegelijkertyd
met mmRTTY166 gelijk het Telex bulletin kon decoderen van PI4VRZ
op 1 PC via doppler peilraam.

En 1 ontvanger op dezelfde geluidkaart...


Maar tegelijk kwam in me op om in de supersimplesounddoppler
hardware een schakelaartje te monteren om de multivibrator
even stop te zetten zodat luisteren mogelijk is naar gedemoduleerd
audio zonder dopplertoon.

Simple idee eigenlijk en dat er niet eerder aan heb gedacht.
Gewoon een maak drukkertje tussen basis en massa aan een van
de multivibrator bc547 torretjes.

Als ik even wil luisteren naar de modulatie van een ruiserig station
dan even de multivibrator stil zetten.

De supersimplesounddoppler aanlaten staan want anders is er
niet een van de 4 antennes doorgeschakeld.

Groeten en suk6,

PA3BNX
Lodewijk
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Re: Super Simple Sound Doppler Peiler

#73 Bericht door Dopp »

Hallo Allemaal,


IK heb nog even een update gezet in een vorige mail
in deze thread updBNX125-118.zip.

Weer wat verbeteringen in de software.
Oa time out error met alleen agrelo detetcting (VRZA Doppler zonder GPS)
Calc Distance bediening vereenvoudigd.
Alleen links muisklikken en crosshair en hand icons nu.

Deleten van Packetlog.txt werkt nu okay.
Maar ook kun je Packetlog.txt nu afspelen onder UI-View32 Logs.



Vandaag opeens het idee om ipv 4x open dipolen
gemonteerd op een drager kruis 4x J antennes
te plaatsen boven op een kruis.

Dat zou als voordeel hebben dat de drager mast + kabels niet in de
velden steekt van de antennes.


J antennes van 300 ohm Lintkabel
gefrot in een PVC buis.

Hm leuk idee nou nog gaan maken hi...


73's

PA3BNX
Lodewijk
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Re: Super Simple Sound Doppler Peiler

#74 Bericht door Dopp »

Hallo Allemaal,


Nog weer wat bedenksels van mijn kant.

Om te kunnen peilen met behulp van de FunCube Dongle.

Simon Brown HB9DRV/GD4ELI werkt aan een dergelijke oplossing
momenteel.


De Funcube heeft slechts een antenne ingang.

Als ik de SuperSimpleDoppler er mee zou willen laten lopen
en ik geen externe kabels van bv USB, RS232 en LiinInvoer Geluidskaart etc
wil hebben om het doppler rotatie referentie signaal binnen te krijgen
dan is nodig om bv een extra carrier met daarop gemoduleerd
de trigger puls of de sinus van de DopplerReferentieOcilator
en deze gemoduleerde carrier moet dan geinjecteerd worden in de coax
antenne kabel naar de FunCubeDongle.

De carrier zou in de buurt van het uit te peilen draaggolf
signaal moeten liggen zodat je het in een waterval van een bepaalde
frequentie breedte zichtbaar en demoduleerbaar hebt.

Met SDR radio is het een koud kunstje om
een FM detector en Product detector simultaan te decoderen.


De hulp carrier zou bv een CW signaal kunnen zijn dat
een trigger puls heeft en een software PLL aanstuurd
zodat er een SCF (BandPAss) filter op de demodulated FM draaggolf
in software kan mee lopen.
De dopplerocilator van de SuperSimpleSoundDoppler
moet dan wel een redelijk stabiele en bekende frequentie
hebben.


Dit is een programmeer uitdaging en tevens een hardware ontwerp
uitdaging voor ons zendamateurs.

Wie o wie helpt/denk en programmeerd er mee om het radio amateurisme
op een hoger en geavanceerder niveau te brengen.

Ik vermoed dat het binnenkort best eens zo zou kunnen zijn
dat op VHF naast de S-meter een Pelorus gaat prijken.

Denk alleen al eens aan de leuke optie om van een satelliet
gewoon de azimuth gedisplayed te hebben in SDR radio.

Ook voor antenne specialisten komen er dan nieuwe radiohorizon
en antenne konstructies naar boven.

Er zullen nog steeds minimaal 3 of 4 rondom gevoelige antennes nodig zijn
op een peilraam wat slechts werkt op een oktaaf brede band.

Maar totdat het zover is kunnen we goed uit de voeten met
mijn SuperSimpleDopplerPeiler en software.
Laatst gewijzigd door Dopp op 03 okt 2011, 17:47, 1 keer totaal gewijzigd.
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

Gebruikersavatar
Dopp
Berichten: 1242
Lid geworden op: 08 mei 2011, 18:03
Roepletters: PA3BNX

Re: Super Simple Sound Doppler Peiler

#75 Bericht door Dopp »

Hallo Allemaal,


Van de week niet zoveel tijd gehad voor programmeren.

Maar toch heb ik in MyMapping vandaag een extra statusstrip onderaan
het scherm gemaakt met mededelingen over de drawing status
en of er gelogged wordt.
En de radius van de rangecircels is hier nu af te lezen.

Ik zelf vind het erg handig.

Je kunt de update downloaden op dit forum een paar berichtjes terug
als UpdateBNX118-126.zip

Laatste versie 03-10-2011


Suk6
Laatst gewijzigd door Dopp op 03 okt 2011, 17:50, 1 keer totaal gewijzigd.
73's
PA3BNX
Lodewijk

Mijn Credo!

Zelfbouw:
Minimaal hardware
en maximaal software.

Plaats reactie