MCU sin generátor

Všetko čo sa týka mikropočítačov + Sekcia Arduino

Moderátori: psichac, Moderátori

Používateľov profilový obrázok
Radus
Ultimate člen
Ultimate člen
Príspevky: 1527
Dátum registrácie: 27 Okt 2009, 00:00
Bydlisko: Prešov
Vek: 42

MCU sin generátor

Príspevok od používateľa Radus » 05 Feb 2024, 14:42

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.
0

maskrtnik01
Ultimate člen
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

Príspevok od používateľa maskrtnik01 » 05 Feb 2024, 16:07

Nejaké NCO? AD9838 napríklad?
0

Používateľov profilový obrázok
Radus
Ultimate člen
Ultimate člen
Príspevky: 1527
Dátum registrácie: 27 Okt 2009, 00:00
Bydlisko: Prešov
Vek: 42

Re: MCU sin generátor

Príspevok od používateľa Radus » 05 Feb 2024, 16:42

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

Atlan
Zaslúžilý člen
Zaslúžilý člen
Príspevky: 1246
Dátum registrácie: 01 Feb 2008, 00:00
Bydlisko: Kosice okolie

Re: MCU sin generátor

Príspevok od používateľa Atlan » 05 Feb 2024, 18:29

Si5351 :D
0

Používateľov profilový obrázok
Radus
Ultimate člen
Ultimate člen
Príspevky: 1527
Dátum registrácie: 27 Okt 2009, 00:00
Bydlisko: Prešov
Vek: 42

Re: MCU sin generátor

Príspevok od používateľa Radus » 05 Feb 2024, 21:31

Zaujímavý chrobáčik ale vie len obdlžníky... ale zase do 200Mhz...:)
0

Lennox
Stály člen
Stály člen
Príspevky: 353
Dátum registrácie: 12 Sep 2019, 22:51
Bydlisko: Bratislava

Re: MCU sin generátor

Príspevok od používateľa Lennox » 05 Feb 2024, 21:45

ja by som použil niečo takéto:
https://www.aliexpress.com/item/4000348791891.html
0

Používateľov profilový obrázok
Radus
Ultimate člen
Ultimate člen
Príspevky: 1527
Dátum registrácie: 27 Okt 2009, 00:00
Bydlisko: Prešov
Vek: 42

Re: MCU sin generátor

Príspevok od používateľa Radus » 05 Feb 2024, 21:56

...ale veď AD9833 som už spomínal, vyzerá to najschodnejšie :) Ale určite je to nejaký čínsky klon :)
Vďaka...
0

miso156
Pokročilý člen
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

Príspevok od používateľa miso156 » 05 Feb 2024, 22:30

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.
0
"No pain, no gain." (KC238)

Používateľov profilový obrázok
Radus
Ultimate člen
Ultimate člen
Príspevky: 1527
Dátum registrácie: 27 Okt 2009, 00:00
Bydlisko: Prešov
Vek: 42

Re: MCU sin generátor

Príspevok od používateľa Radus » 05 Feb 2024, 22:48

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

Dumitru
Stály člen
Stály člen
Príspevky: 409
Dátum registrácie: 06 Nov 2011, 22:19
Vek: 32

Re: MCU sin generátor

Príspevok od používateľa Dumitru » 18 Feb 2024, 22:46

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
image.png

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 :D
image.png
image.png
1
Obrázok 1

Atlan
Zaslúžilý člen
Zaslúžilý člen
Príspevky: 1246
Dátum registrácie: 01 Feb 2008, 00:00
Bydlisko: Kosice okolie

Re: MCU sin generátor

Príspevok od používateľa Atlan » 19 Feb 2024, 07:59

Naco pouzijez 6 res 9 kanalov?
0

Používateľov profilový obrázok
Radus
Ultimate člen
Ultimate člen
Príspevky: 1527
Dátum registrácie: 27 Okt 2009, 00:00
Bydlisko: Prešov
Vek: 42

Re: MCU sin generátor

Príspevok od používateľa Radus » 19 Feb 2024, 08:53

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...
0

Dumitru
Stály člen
Stály člen
Príspevky: 409
Dátum registrácie: 06 Nov 2011, 22:19
Vek: 32

Re: MCU sin generátor

Príspevok od používateľa Dumitru » 19 Feb 2024, 09:25

Atlan napísal:
19 Feb 2024, 07:59
Naco pouzijez 6 res 9 kanalov?
Ja zatiaľ neviem :D ale budú tam a raz možno na niečo :D

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 :D 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 :D 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 ... :D 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 :D, 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 :D a do krabičky čo som mal doma sa mi akurát zmestilo ich 6.
0

Atlan
Zaslúžilý člen
Zaslúžilý člen
Príspevky: 1246
Dátum registrácie: 01 Feb 2008, 00:00
Bydlisko: Kosice okolie

Re: MCU sin generátor

Príspevok od používateľa Atlan » 20 Feb 2024, 11:43

Pekne pracuj, bude mi treba ad9833 a este nejaky i2c potenciometer aby som mohol riadit zosilnenie ad603. Ty cim budes regulovat?
0

Dumitru
Stály člen
Stály člen
Príspevky: 409
Dátum registrácie: 06 Nov 2011, 22:19
Vek: 32

Re: MCU sin generátor

Príspevok od používateľa Dumitru » 20 Feb 2024, 17:36

Atlan napísal:Pekne pracuj, bude mi treba ad9833 a este nejaky i2c potenciometer aby som mohol riadit zosilnenie ad603. Ty cim budes regulovat?
Ja to budem riadiť pomocou PWM
image.png
Potom pozor na vstupný odpor AD603 ho ma 100Ω preto je nutne dať buffer za AD9833
image.png
Tu je zaujímavý projekt tiež na baze ad9833 kde autor zmeral charakteristiku výstupného napätia vs zaťaž

Obrázok

A nebude lepšie použiť DAC napríklad MCP4725 namiesto digitálneho potenciometra ?
0

Atlan
Zaslúžilý člen
Zaslúžilý člen
Príspevky: 1246
Dátum registrácie: 01 Feb 2008, 00:00
Bydlisko: Kosice okolie

Re: MCU sin generátor

Príspevok od používateľa Atlan » 04 Mar 2024, 19:19

Nieco ako ad9833 ale ovladane cez i2c nieje?
0

Dumitru
Stály člen
Stály člen
Príspevky: 409
Dátum registrácie: 06 Nov 2011, 22:19
Vek: 32

Re: MCU sin generátor

Príspevok od používateľa Dumitru » 04 Mar 2024, 20:03

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
0

dan21
Ultimate člen
Ultimate člen
Príspevky: 3024
Dátum registrácie: 11 Apr 2007, 00:00
Bydlisko: ZA

Re: MCU sin generátor

Príspevok od používateľa dan21 » 05 Mar 2024, 07:48

Minuly vikend som len tak z nudy postavil toto:
http://www.technoblogy.com/show?20W6
par suciastok a celkom dobry vysledok :-)
0

Používateľov profilový obrázok
Tribec Zacks
Pokročilý člen
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

Príspevok od používateľa Tribec Zacks » 05 Mar 2024, 08:17

@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....
0
Kreativita a motivacia je to, co prinasa originalne napady a myslienky, disciplina je to, co ich dokaze zrealizovat.

Používateľov profilový obrázok
Radus
Ultimate člen
Ultimate člen
Príspevky: 1527
Dátum registrácie: 27 Okt 2009, 00:00
Bydlisko: Prešov
Vek: 42

Re: MCU sin generátor

Príspevok od používateľa Radus » 05 Mar 2024, 10:04

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

Napísať odpoveď
  • Podobné témy
    Odpovedí
    Zobrazení
    Posledný príspevok