Innholdsfortegnelse:

Bærbar funksjonsgenerator på Arduino: 7 trinn (med bilder)
Bærbar funksjonsgenerator på Arduino: 7 trinn (med bilder)

Video: Bærbar funksjonsgenerator på Arduino: 7 trinn (med bilder)

Video: Bærbar funksjonsgenerator på Arduino: 7 trinn (med bilder)
Video: Forhekset bærbar! 2024, Juli
Anonim
Image
Image
Bærbar funksjonsgenerator på Arduino
Bærbar funksjonsgenerator på Arduino
Bærbar funksjonsgenerator på Arduino
Bærbar funksjonsgenerator på Arduino

Funksjonsgenerator er et veldig nyttig verktøy, spesielt når vi vurderer å teste kretsens respons på et bestemt signal. I denne instruksen vil jeg beskrive byggesekvensen til en liten, brukervennlig, bærbar funksjonsgenerator.

Funksjoner i prosjektet:

  • Helt digital kontroll: Du trenger ikke passive analoge komponenter.
  • Modulær design: Hver sub-krets er en forhåndsdefinert brukervennlig modul.
  • Utgangsfrekvens: Tilgjengelig område fra 0Hz til 10MHz.
  • Enkel kontroll: Enkelt roterende encoder med innebygd trykknapp.
  • Li-ion batteri for bærbar bruk, med ekstern lading.
  • AC- og DC -kobling for utgangsbølgeform.
  • LCD -lysstyrkekontroll for redusert energiforbruk.
  • Batteriindikator.
  • Digital amplitudekontroll.
  • Tre tilgjengelige bølgeformer: Sinus, trekant og firkant.

Trinn 1: Ideen

Ideen
Ideen
Ideen
Ideen
Ideen
Ideen

Det er mange kretser som krever noe testutstyr for å få informasjon om kretsens reaksjon på en bestemt bølgeform. Dette prosjektet er basert på Arduino (Arduino Nano i dette tilfellet), med 3,7V et litium-ion-batteri som strømkilde, noe som gjør enheten bærbar. Det er kjent at Arduino Nano-kortet krever 5V som strømforsyning, så elektronisk design inneholder DC-DC boost-omformer som konverterer 3,7V batterispenning til 5V som kreves for å slå på Arduino. Dermed er dette prosjektet enkelt å bygge, helt modulært, med relativt enkelt skjematisk diagram.

Strømforsyning av kortet: Enheten har en enkelt mini-USB-kontakt som mottar 5V fra den eksterne strømforsyningen, som enten kan være PC eller ekstern USB-lader. kretsen er designet på en måte at når 5V DC-kilden er tilkoblet, lades Li-ion-batteriet av TP4056-ladermodulen som er koblet til strømforsyningskretsen (emnet vil bli utvidet ytterligere i de følgende trinnene).

AD9833: integrert funksjonsgeneratorkrets er en sentral del av designet, styrt via SPI -grensesnitt med mulighet til å generere firkant/sinus/trekantbølge med frekvensmoduleringsalternativ. Siden AD9833 ikke har mulighet til å endre utgangssignalamplituden, har jeg brukt et digitalt 8-biters potensiometer som en spenningsdeler ved endepunktet for enheten (vil bli beskrevet i ytterligere trinn).

Skjerm: er den grunnleggende 16x2 LCD-skjermen, som sannsynligvis er den mest populære flytende krystallskjermen blant Arduino-brukere. For å redusere energiforbruket, er det et alternativ for å justere LCD-bakgrunnsbelysning via PWM-signal fra Arduino forhåndsdefinerte "analoge" pinne.

Etter denne korte introduksjonen kan vi gå videre til byggeprosessen.

Trinn 2: Deler og instrumenter

Deler og instrumenter
Deler og instrumenter

1: Elektroniske deler:

1.1: Integrerte moduler:

  • Arduino Nano -brett
  • 1602A - Generisk flytende krystallskjerm
  • CJMCU - AD9833 Funksjonsgeneratormodul
  • TP4056 - Li -ion batterilader
  • DC-DC Step-Up coverter-modul: 1.5V-3V til 5V omformer

1.2: Integrerte kretser:

  • SRD = 05VDC - 5V SPDT -relé
  • X9C104P - 8 -bits 100KOhm digitalt potensiometer
  • EC11 - Rotary Encoder med SPST -bryter
  • 2 x 2N2222A - NPN for generell bruk BJT

1.3: Passive og uklassifiserte deler:

  • 2 x 0.1uF -Keramiske kondensatorer
  • 2 x 100uF - Elektrolytiske kondensatorer
  • 2 x 10uF - Elektrolytiske kondensatorer
  • 3 x 10KOhm motstander
  • 2 x 1.3KOhm motstander
  • 1 x 1N4007 likeretterdiode
  • 1 x SPDT vippebryter

1.4: Koblinger:

  • 3 x 4-pinners JST 2,54 mm pitch-kontakter
  • 3 x 2-pinners JST 2,54 mm pitch-kontakter
  • 1 x RCA -kontaktkontakt

2: Mekaniske deler:

  • 1 x 12,5 cm x 8 cm x 3,2 cm Plastkapsling
  • 6 x KA-2 mm trekkskruer
  • 4 x KA-8 mm boreskruer
  • 1 x Knappknapp (lokk)
  • 1 x 8 cm x 5 cm prototypebrett

3. Instrumenter og programvare:

  • Loddestasjon/jern
  • Elektrisk skrutrekker
  • Slipefiler i mange størrelser
  • Skarp kniv
  • Bor
  • Skrutrekkerbiter
  • Varm limpistol
  • Mini-USB-kabel
  • Arduino IDE
  • Bremseklave/linjal

Trinn 3: Skjematisk forklaring

Skjematikk Forklaring
Skjematikk Forklaring
Skjematikk Forklaring
Skjematikk Forklaring
Skjematikk Forklaring
Skjematikk Forklaring

For å gjøre det lettere å forstå det skjematiske diagrammet, er beskrivelsen delt i underkretser mens hver underkrets har ansvar for hver designblokk:

1. Arduino Nano Circuit:

Arduino Nano -modul fungerer som en "hovedhjerne" for enheten vår. Den styrer alle perifere moduler på enheten, både i digital og analog driftsmodus. Siden denne modulen har sin egen mini-USB-inngangskontakt, vil den bli brukt både som inngang for strømforsyning og programmeringsgrensesnitt. På grunn av det er J1 - mini -USB -kontakten koblet fra det skjematiske symbolet på Arduino Nano (U4).

Det er et alternativ for bruk av dedikerte analoge pinner (A0.. A5) som generell I/O, så noen av pinnene brukes som digital utgang, og kommuniserer med LCD- og AC/DC -koblingsvalg av enhetens utgang. Analoge pinner A6 og A7 er dedikerte analoge inngangspinner og kan bare brukes som ADC -innganger på grunn av Arduino Nano mikrokontroller ATMEGA328P TQFP -pakken, slik den ble definert i databladet. Legg merke til at batterispenningslinjen VBAT er festet til den analoge inngangspinnen A7, fordi vi må få verdien for å bestemme lav batteristatus for Li-ion batterispenning.

2. Strømforsyning:

Strømforsyningskretsen er basert på å drive hele enheten via Li-ion-batteri 3.7V konvertert til 5V. SW1 er en SPST vippebryter som styrer strømmen på hele kretsen. Som det fremgår av skjemaet, lades batteriet via TP4056-modulen når ekstern strømforsyning er koblet til via mikro-USB-kontakten på Arduino Nano-modulen. Sørg for at bypass-kondensatorer med flere verdier er tilstede på kretsen, siden det er en DC-DC boost-omformer som bytter støy på bakken og 5V potensialer i hele kretsen.

3. AD9833 og utgang:

Denne underkretsen gir passende utgangsbølgeform, definert av AD9833-modulen (U1). Siden det bare er en enkelt strømforsyning på enheten (5V), er det behov for å feste koplingens valgkrets til utgangskaskaden. C1 -kondensatoren er koblet i serie til amplitudevalgtrinnet, og kan dempes via drivstrøm på reléinduktoren, og dermed få utgangssignalet sporet rett til utgangstrinnet. C1 har verdien 10uF, det er tilstrekkelig at bølgeformen til og med lave frekvenser passerer kondensatoren uten å bli forvrengt, bare påvirket av DC -fjerning. Q1 brukes som en enkel BJT -bryter som brukes til å drive strøm gjennom reléets induktor. Forsikre deg om at dioden er koblet til en omvendt allokering til reléinduktoren, for å unngå spenningsspenninger som kan skade enhetskretsene.

Sist, men ikke minst, er et amplitudevalg. U6 er 8-bits digitalt potensiometer IC, som fungerer som spenningsdeler for en gitt utgangsbølgeform. X9C104P er et 100KOhm digitalt potensiometer med veldig enkel viskerposisjonsjustering: 3-pinners digitale innganger for justering av stigning/reduksjon av viskerposisjon.

4. LCD:

16x2 Liquid crystal display er et grafisk grensesnitt mellom brukeren og enhetens kretser. For å redusere energiforbruket, er LCD -bakgrunnsbelysningskatodestiften koblet til Q2 BJT koblet som bryter, styrt av PWM -signal drevet av Arduino analogWrite -evne (vil bli beskrevet i Arduino -kodetrinn).

5. Koder:

Koderkrets er et kontrollgrensesnitt som definerer hele enhetens drift. U9 består av encoder og en SPST -bryter, så det er ikke nødvendig å legge til flere knapper i prosjektet. Koder og bryterpinner bør trekkes opp av en ekstern 10KOhm motstand, men den kan også defineres via kode. Det anbefales å legge til 0,1 uF kondensatorer parallelt med pulsgiver A og B for å unngå sprett på disse inngangslinjene.

6. JST -kontakter:

Alle de eksterne delene av enheten er koblet til via JST -kontakter, noe som gjør det mye mer praktisk å montere enheten, med en ekstra funksjon for å redusere plass for feil under byggeprosessen. Kartlegging av kontaktene gjøres på denne måten:

  • J3, J4: LCD
  • J5: Koder
  • J6: Batteri
  • J7: SPST -vippebryter
  • J8: RCA -utgangskontakt

Trinn 4: Lodding

Lodding
Lodding
Lodding
Lodding
Lodding
Lodding

På grunn av dette prosjektets modulære design, blir loddetrinn enkelt:

A. Hovedkortlodding:

1. Først av alt er det nødvendig å beskjære prototypebrettet til størrelsen på ønsket skapdimensjon.

2. Lodding Arduino Nano -modulen og teste den første driften.

3. Loddestrømforsyningskrets og kontroll av alle spenningsverdiene samsvarer med enhetens krav.

4. Lodding AD9833 -modul med alle perifere kretser.

5. Lodding av alle JST -kontaktene.

B. Eksterne komponenter:

1. Lodding av JST -hankontaktledninger til LCD -pinnene i NØYAKTIG rekkefølge slik det var planlagt på hovedkortet.

2. Lodding av JST -hankoblinger til enkoderen på samme måte som forrige trinn

3. Loddebryter til JST -ledningene.

4. Lodding av JST-ledninger til batteriet (hvis det er behov for det i det hele tatt. Noen av Li-ion-batteriene som er tilgjengelige på eBay, er forhåndsloddet med sin egen JST-kontakt).

Trinn 5: Kapsling og montering

Vedlegg og montering
Vedlegg og montering
Vedlegg og montering
Vedlegg og montering
Vedlegg og montering
Vedlegg og montering
Vedlegg og montering
Vedlegg og montering

Etter at alt lodding er gjort, kan vi fortsette til enhetsmonteringssekvensen:

1. Tenk over plassering av enhetens eksterne deler: I mitt tilfelle foretrakk jeg å plassere koder under LCD, når vippebryter og RCA -kontakt er plassert på hver sin side av kabinettet.

2. Forberede LCD -ramme: Bestem hvor LCD -en skal plasseres på enheten, sørg for at den blir plassert i riktig retning. Det skjedde med meg flere ganger at etter at jeg var ferdig med skjæreprosessen, ble LCD -en vendt vertikalt, og snakket om hvilken er trist, fordi det er behov for å omorganisere LCD-rammen.

Etter at rammen er valgt, borer du flere hull på omkretsen av hele rammen. Fjern alle uønskede plastsnitt med slipefil.

Sett inn LCD -skjermen fra innsiden og finn skruepunktene på kabinettet. Bor hull med en passende diameter. Sett inn skruer og fest muttere på innsiden av frontpanelet.

3. Koder: har bare en roterende del på pakken. Bor området i henhold til omkoderens roterende festediameter. Sett den inn fra innsiden, fest den med en varm limpistol. Sett et lokk på det roterende tilbehøret.

4. Vippebryter: bestem dimensjonene på vippebryteren, slik at den kan trekkes ned eller opp fritt. Hvis du har skruepunkter på vippebryteren, borer du de riktige områdene på kabinettet, ellers kan du feste den med en varm limpistol.

5. RCA-utgangskontakt: Bor hull med passende diameter for RCA-utgangskontakten på undersiden av kabinettet. Fest den med den varme limpistolen.

6. Hovedkort og batteri: Plasser Li-ion-batteri på undersiden av kabinettet. Batteriet kan festes med en varm limpistol. Hovedkortet bør bores på fire steder for 4 skruer på hvert hovedkorthjørne. Sørg for at Arduino mini-USB-inngang er så nær som mulig grensen til kabinettet (vi må bruke den til lading og programmering).

7. Mini-USB: kutt av ønsket område for Arduino Nano mikro-USB med en slipefil, og gjør det mulig å koble ekstern strømforsyning/PC til enheten når den er ferdig montert.

8. Endelig: Koble til alle JST -kontaktene, fest begge deler av kabinettet med fire 8 mm skruer på hvert hjørne av kabinettet.

Trinn 6: Arduino -koden

Arduino -koden
Arduino -koden

Vedlagt kode er den komplette enhetskoden som er nødvendig for fullstendig drift av enheten. All nødvendig forklaring er vedlagt i kommentarfeltene inne i koden.

Trinn 7: Sluttesting

Siste test
Siste test
Siste test
Siste test

Vi har enheten vår klar til bruk. mini-USB-kontakt fungerer både som programmeringsinngang og ekstern laderinngang, så enheten kan programmeres når den er ferdig montert.

Håper, du finner dette instruerbart nyttig, Takk for at du leste!;)

Anbefalt: