MCU sin generátor
Moderátori: psichac, Moderátori
MCU sin generátor
Zdravím vospolok, hľadám schému sínusového oscilátora ktorý by som vedel riadiť pomocou MCU. Nemuselo by to byť nič extra zložité, nepožadujem ani nejaké extra veľké skreslenie, rozsah od 20Hz do 1kHz. Napadlo mi že použijem DA a nejaké VCO, alebo nejaký generátor funkcií napr XR2206 a k tomu použiť digitálny potenciometer v RC časovom článku. Nemáte ešte nejaké nápady? Hlavne na nejaké jednoduché VCO na ktoré by som vedel zavesiť DA. Nechcem nechať zbitočne generovať pomocou MCU sinusovku, bude mať čo iné na robote.
Ďakujem.
Ďakujem.
0
-
- Ultimate člen
- Príspevky: 2686
- Dátum registrácie: 20 Júl 2010, 00:00
- Bydlisko: okolie KE
- Vek: 27
Re: MCU sin generátor
Jo, môže byť, vďaka za tip. Už len aby to bolo zohnateľné, Ale našiel som aj AD9833 čo mi príde ľahšie pajkovateľné...
0
Re: MCU sin generátor
ja by som použil niečo takéto:
https://www.aliexpress.com/item/4000348791891.html
https://www.aliexpress.com/item/4000348791891.html
0
Re: MCU sin generátor
...ale veď AD9833 som už spomínal, vyzerá to najschodnejšie Ale určite je to nejaký čínsky klon
Vďaka...
Vďaka...
0
-
- Pokročilý člen
- Príspevky: 686
- Dátum registrácie: 06 Dec 2020, 11:46
- Bydlisko: Banska Stiavnica
- Vek: 39
Re: MCU sin generátor
Najlacnejsie je asi pouzit dalsi maly Mcu a pwm-kom krmit RC.
Inak, ak nepotrebujes velke rozlisenie, tak vytahovat priamo hodnoty sinusu z pamati pri 1khz az tak vela vypoctovych prostriedkov neberie.
Ak mas miesto v pamati a ulozis tam cely 2pi sinus (nie len stvrtinu ktoru prevracias), tak kod moze byt velmi rychly.
Inak, ak nepotrebujes velke rozlisenie, tak vytahovat priamo hodnoty sinusu z pamati pri 1khz az tak vela vypoctovych prostriedkov neberie.
Ak mas miesto v pamati a ulozis tam cely 2pi sinus (nie len stvrtinu ktoru prevracias), tak kod moze byt velmi rychly.
0
"No pain, no gain." (KC238)
Re: MCU sin generátor
Aj s touto myšlienkou som sa pohrával, ale jednoduchšie mi príde tam pridať to ADčko, no neviem... zvažujem možnosti...
0
Re: MCU sin generátor
Ahoj ak to neponáhľa tak koncom marca začiatkom apríla mam v plané zverejniť Low cost 9 kanálový dds generátor ktorý bude ovládaní pomocou mcu na baze ad9833 (je možne osadiť smd chip na pcb alebo už kúpený modul) + LM318 + AD603 bude možnosť flexibilného nastavenia 1kanal až 9kanalov 90% súčiastok budú THT
zatiaľ mam naprogramovane :
Signály: Sínus (1Hz-1Mhz) Trojuholník(1Hz – 200Khz) a Pravouhlý (1Hz – 200Khz)
Amplitúda: Vpk-pk 200mV(+-100mV) – 10V(+-5V)
Nastavenie: Amplitúdy s krokom 100mV + možnosť kalibrácie
Nastavenie: Frekvencie s krokom 1Hz
Nastavenie: Nastavenie ofsetu + možnosť kalibrácie
Automatické prepínanie filtrov
Ostáva naprogramovať
PWM bude 8bit 7 módov 62.5Khz;7.812Khz;1.953Khz;0.977Khz;0.488Khz;0.244Khz;61Hz
Fázový posun signálu
Zatiaľ je to testovane s IO LM318 (lacný ľahko dostupný) s výstupným odporom 600Ω
Chcem ešte otestovať LM7171 potom možno frekvencie pôjdu vyššie a výstupný odpor bude 50Ω dps bude univerzálna buď sa osadí LM318 alebo LM7171
AD603 bol kúpení za rozumnú cenu cca 1.6€ odtiaľto a pracujú v poriadku vyzerá to byť originál s toho istého obchodu boli kúpené aj LM7171 ale to musím otestovať
Ja osobne budem mať 6kanalovu verziu zatiaľ to mam rozložene na stole
zatiaľ mam naprogramovane :
Signály: Sínus (1Hz-1Mhz) Trojuholník(1Hz – 200Khz) a Pravouhlý (1Hz – 200Khz)
Amplitúda: Vpk-pk 200mV(+-100mV) – 10V(+-5V)
Nastavenie: Amplitúdy s krokom 100mV + možnosť kalibrácie
Nastavenie: Frekvencie s krokom 1Hz
Nastavenie: Nastavenie ofsetu + možnosť kalibrácie
Automatické prepínanie filtrov
Ostáva naprogramovať
PWM bude 8bit 7 módov 62.5Khz;7.812Khz;1.953Khz;0.977Khz;0.488Khz;0.244Khz;61Hz
Fázový posun signálu
Zatiaľ je to testovane s IO LM318 (lacný ľahko dostupný) s výstupným odporom 600Ω
Chcem ešte otestovať LM7171 potom možno frekvencie pôjdu vyššie a výstupný odpor bude 50Ω dps bude univerzálna buď sa osadí LM318 alebo LM7171
AD603 bol kúpení za rozumnú cenu cca 1.6€ odtiaľto a pracujú v poriadku vyzerá to byť originál s toho istého obchodu boli kúpené aj LM7171 ale to musím otestovať
Ja osobne budem mať 6kanalovu verziu zatiaľ to mam rozložene na stole
1
1
Re: MCU sin generátor
Vďaka, vyzerá to šialene, ja som potreboval len niečo jednoduché... ale poznáme to, pokiaľ menej je viac, o koľko viac je viac
Pekná práca...
Pekná práca...
0
Re: MCU sin generátor
Ja zatiaľ neviem ale budú tam a raz možno na niečo
V podstate myšlienka bola postaviť nejaký generátor signálov aby mal lepšie parametre ako FG100 a cenovo porovnateľný , a riadení pomocou mcu, potom som dlho hľadal riešenie čo sa týka VGA nakoľko už hotové chipy sú drahé ako kokaín.
Prezrel som riešenia od digitálnych potenciometrov cez JFET Tranzistory a v jednej schémy čínskeho dds generátoru som objavil AD603 v EU obchodoch to stoji okolo 17€ kus čo je polovica ceny toho čínskeho generátora tak som skúsil alliexpress a tam to je za prijateľnú cenu a je funkčný aspoň do 5Mhz som ho skušal a funguje bez problémov aj nastavenie zosilnenia funguje korektne takže ak by to aj bolo čínska kopia tak do môjho projektu je to stále použiteľne
Ďalej čim budem generovať signál samozrejme najlepšie je použiť FPGA + rýchly DAC ale to by som sa u programoval k smrti a najme keď som na FPGA raz programoval len jednoduchý UART skúsenosti minimálne, a určite by som sa tam zacyklil nakoľko FPGA by mi dovolilo generovať čokoľvek si zmyslím takže tam by som vymýšľal ... AD9833 ma všetko čo je k tomu potrebne v jednom čipe a cenovo dostupný .
No a k tým 6 kanálom keď už som mal postavení jeden kanál, stále som rozmýšľal ako upraviť pcb nech sa tam zmestia 2 kanály, ako som na začiatku chcel mať aspoň 2 kanály, a keď večer som zapájal LCD cez I2C a programoval ma napadlo spraviť komunikáciu cez I2C MASTER -> SLAVE aj s druhým kanálom tým pádom nepotrebujem nič upravovať použijem tu istú pcb, ale potom mi ostal konektor pre obsluhu klávesnice prázdny , a nevyužitý. Tam bola ďalšia myšlienka nastavovať adresu slave pomocou jumpru a tým pádom možnosť rozšíriť o xy kanálov a do krabičky čo som mal doma sa mi akurát zmestilo ich 6.
0
Re: MCU sin generátor
Pekne pracuj, bude mi treba ad9833 a este nejaky i2c potenciometer aby som mohol riadit zosilnenie ad603. Ty cim budes regulovat?
0
Re: MCU sin generátor
Ja to budem riadiť pomocou PWMAtlan napísal:Pekne pracuj, bude mi treba ad9833 a este nejaky i2c potenciometer aby som mohol riadit zosilnenie ad603. Ty cim budes regulovat?
Potom pozor na vstupný odpor AD603 ho ma 100Ω preto je nutne dať buffer za AD9833
Tu je zaujímavý projekt tiež na baze ad9833 kde autor zmeral charakteristiku výstupného napätia vs zaťaž
A nebude lepšie použiť DAC napríklad MCP4725 namiesto digitálneho potenciometra ?
0
Re: MCU sin generátor
Keď som to hľadal ja https://www.analog.com/en/parametricsea ... ort=s3,asc
nič podobne som nenašiel ale skús to prebehnúť možno mi niečo ušlo
Asi najrýchlejšie riešenie je pichnúť i2c expander a tým simulovať SPI
nič podobne som nenašiel ale skús to prebehnúť možno mi niečo ušlo
Asi najrýchlejšie riešenie je pichnúť i2c expander a tým simulovať SPI
0
Re: MCU sin generátor
Minuly vikend som len tak z nudy postavil toto:
http://www.technoblogy.com/show?20W6
par suciastok a celkom dobry vysledok
http://www.technoblogy.com/show?20W6
par suciastok a celkom dobry vysledok
0
- Tribec Zacks
- Pokročilý člen
- Príspevky: 721
- Dátum registrácie: 26 Jún 2010, 00:00
- Bydlisko: Levice / Cork IRL
- Vek: 42
- Kontaktovať používateľa:
Re: MCU sin generátor
@Radus
"Nechcem nechať zbitočne generovať pomocou MCU sinusovku, bude mať čo iné na robote."
vies dat vediet nieco viac, typ mcu, typ projektu? na audio gen. ktory potrebujes, povedzme @48khz sample rate potrebujes preratat 960 samplov kazdych 20ms (1 kanal). sinus budes najskor generovat z tabulky, takze ziadny hardcore processing, keby si aj implementoval gain a nejaku interpolaciu tak sa zmestis (nech nezerem) do 30cpu instrukcii na sampel + nejaky dds loop, interrupt a dma management, nech to spapa 50k instrukcii 50x za sekundu. to mas 2-3% vykonu (do 5% s rezervou) nejakeho bezneho 100mhz 32bitu co ma dma a dac.
edit:
ak by si nepotreboval real-time zmenu frekvencie, tak len preratas buffer ktory uz len odosielas dmackom na dac, cisty irq a dma handling. pri zmene freq. ho preratas nanovo....
"Nechcem nechať zbitočne generovať pomocou MCU sinusovku, bude mať čo iné na robote."
vies dat vediet nieco viac, typ mcu, typ projektu? na audio gen. ktory potrebujes, povedzme @48khz sample rate potrebujes preratat 960 samplov kazdych 20ms (1 kanal). sinus budes najskor generovat z tabulky, takze ziadny hardcore processing, keby si aj implementoval gain a nejaku interpolaciu tak sa zmestis (nech nezerem) do 30cpu instrukcii na sampel + nejaky dds loop, interrupt a dma management, nech to spapa 50k instrukcii 50x za sekundu. to mas 2-3% vykonu (do 5% s rezervou) nejakeho bezneho 100mhz 32bitu co ma dma a dac.
edit:
ak by si nepotreboval real-time zmenu frekvencie, tak len preratas buffer ktory uz len odosielas dmackom na dac, cisty irq a dma handling. pri zmene freq. ho preratas nanovo....
0
Kreativita a motivacia je to, co prinasa originalne napady a myslienky, disciplina je to, co ich dokaze zrealizovat.
Re: MCU sin generátor
Ahoj Zacks, máš páš pravdu, s 32bit MCU by to nebol problém, ale chcem použiť niečo čo sa mi váľa po šuflíkoch a to sú ATMEGY 128čky Tie nemajú ani integrovaný DA, o DMA ani nepočuli, teda aj tak by som musel pridať švábika na dosku. S taktom 16Mhz tiež zázraky neurobím a to potrebujem ešte tú sínusovku modulovať. Vopchá sa mi do toho nejaké ďalšie prerušenie náhodou, a už sa to rozhodí. Použiť to ADčko mi prišlo celkom elegantné, nastaviť a nestarať sa...
0
-
- Podobné témy
- Odpovedí
- Zobrazení
- Posledný príspevok
-
- 179 Odpovedí
- 21744 Zobrazení
-
Posledný príspevok od používateľa Dumitru
-
- 5 Odpovedí
- 234 Zobrazení
-
Posledný príspevok od používateľa Atlan
-
- 1 Odpovedí
- 275 Zobrazení
-
Posledný príspevok od používateľa samponek
-
- 2 Odpovedí
- 1614 Zobrazení
-
Posledný príspevok od používateľa pedrork
-
- 15 Odpovedí
- 1093 Zobrazení
-
Posledný príspevok od používateľa taphome