Sida 1 av 1

PLL i mjukvara

Postat: 8 juli 2014, 09:28:41
av Agwan
Kan man använda en mjukvaruPLL för att anpassa en sinusvåg skapad i en mikroprocessor till att ha samma fas som en inkommande uppmätt sinusvåg med mätbrus på? Någon som provat något liknande?

Re: PLL i mjukvara

Postat: 8 juli 2014, 11:49:52
av Andax
Har gjort PLL i vhdl för några år sedan vilket funkade väl. Det borde inte vara något problem om man får in sample i jämn takt och att man har tillräckligt hastighet på mcu.

Re: PLL i mjukvara

Postat: 8 juli 2014, 13:04:00
av Micke_s
Några frågor:
• hur snabb är signalen?
• vad är det för microprocessor.
• vad är det för insignal?

Re: PLL i mjukvara

Postat: 8 juli 2014, 15:17:44
av blueint
Klock- och samplingsgitter kan också vara en faktor.

Re: PLL i mjukvara

Postat: 8 juli 2014, 15:30:30
av Icecap
"gitter"? Menar du "jitter"?

Re: PLL i mjukvara

Postat: 8 juli 2014, 23:40:57
av blueint
Den yttre signalen kan ha en frekvens som inte nödvändligtvis är en heltalsmultipel av PLL systemets samplingsfrekvens. Det är normalt sett inget problem. Men om man är högt upp i frekvens och möjligheten att integrera över tid är liten så kan det märkas.

Re: PLL i mjukvara

Postat: 10 juli 2014, 20:06:11
av Agwan
Signalen ligger på mellan 10 och 25Hz ungefär. Vid vardera applikation är dock spannet mycket mindre, kanske +- en eller två Hz från nominellt.

Tänkte köra det på en 8-bit AVR på 17.xxx MHz.

Jag vet inte vad du menar Micke_s med vad det är för signal. Det kommer in en signal som består av en bas-sinusvåg och kanske några höga övertoner samt brus. Jag filtrerar den med ett tvåpoligt bandpassfilter mellan typ 10 och 25Hz. Jag samplar signalen i 1kHz.

Jag hittade den här hemsidan för att generera färdig C-kod för en PLL, men den verkar trasig, jag får den inte att generera något iaf.
http://www-users.cs.york.ac.uk/~fisher/mkpll/

Re: PLL i mjukvara

Postat: 11 juli 2014, 00:09:45
av superx
Jag skulle testa att mäta tiden mellan nollgenomgångarna på den filtrerade signalen. Om du medelvärdesbildar den tiden får du en frekvensskattning som du kan använda för att generera din signal. Ja, det är väl ungefär vad en PLL gör iof, men det borde inte vara så svårt att skrivs själv.

Re: PLL i mjukvara

Postat: 11 juli 2014, 09:19:55
av Agwan
Det är en bra backupplan/första test. Hade helst använt någon minsta kvadratmetod eller PLL.

Re: PLL i mjukvara

Postat: 11 juli 2014, 09:41:17
av Andax
Du kan även titta på analytiska signaler och "instantaneous phase". Går att göra ganska enkla filter som skattar den lokala fasen och sedan använda den som en nyckel till en lookup-tabell med en sinus.

Re: PLL i mjukvara

Postat: 11 juli 2014, 09:56:07
av superx
Vad ska du använda detta till?