Indholdsfortegnelse:
- Trin 1: Baggrund
- Trin 2: Original idé
- Trin 3: Stødte på problemer
- Trin 4: Løsning
- Trin 5: Kantdetektion og Matlab -program
- Trin 6: Eksempel: Instructables Robot
- Trin 7: Fejlfinding/eksempelfiler
Video: Oscilloskopmusik: 7 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
Indledning: Denne instruks skal opfylde et krav til dokumentationsdelen af mikrocomputer -interfaceprojektet ved Utah State University.
Trin 1: Baggrund
Baggrund:
Et oscilloskop bruges til at vise og måle et spændingssignal, der er afbildet mod tiden. Et oscilloskop i XY -tilstand plotter et signal mod et andet signal, der ligner en parametrisk ligning. Dette projekt bruger et oscilloskop i XY -tilstand til at vise billeder, der er produceret af en lydfil.
Trin 2: Original idé
Den oprindelige idé til projektet var at konvertere et gammelt Cathode Ray Tube (CRT) fjernsyn til et XY oscilloskop og bruge det til at vise billederne. Dette kan gøres ved at afbryde afbøjningsspolerne. Når du afbryder de vandrette spoler, vises en lodret linje, og når du afbryder den lodrette spole, vises en vandret linje. Alt jeg skulle gøre var at tilslutte lydkilden til afbøjningsspolerne, og jeg ville have et XY -oscilloskop. Desværre stødte jeg på flere problemer.
Trin 3: Stødte på problemer
Et af de problemer, jeg stødte på, var sikkerhedsfunktionerne. Tv'et var i stand til at opdage, at dets afbøjningsspoler var blevet afbrudt og ikke ville tænde. Dette er for at forhindre elektronstrålen i at brænde et hul i fosforet på skærmen. Jeg målte spolernes modstand og placerede en modstand på tværs af den. Modstanden brændte straks halvt på grund af de høje spændinger. Jeg forsøgte igen med en højere nominel modstand, men det virkede heller ikke. Jeg læste nogle fora online om, hvordan et andet sæt afbøjningsspoler kunne tilsluttes det originale tv, så jeg fandt et andet tv og tilsluttede det afbøjningsspole til mit. Impedansen var ikke den samme, så den tændte ikke. Efter lidt mere forskning fandt jeg ud af, at ældre fjernsyn ikke havde sikkerhedsfunktionen og var ligeglade med, om dens afbøjningsspoler blev afbrudt. Jeg kunne finde et tv produceret i 2000, der syntes at fungere. Jeg var i stand til at få nogle enkle former på skærmen, men noget mere kompliceret end en cirkel ville blive stærkt forvrænget. Til sidst holdt dette tv op med at fungere, og det blev ved med at blæse sikringer.
Jeg var i stand til at finde et lille tv, der blev lavet i 1994. Dette tv fungerede ret godt, men jeg var ikke i stand til at få den korrekte orientering af billedet, selv når jeg skiftede signalerne i hver kombination. Det havde også de samme problemer som det andet tv og ville ikke producere komplicerede billeder. Efter en masse research fandt jeg ud af, at problemet var, at jeg forsøgte at producere et vektorbillede på et raster -display. Et raster -display er en skærm, der scanner vandret meget hurtigt og derefter lodret med en langsommere hastighed. Et vektordisplay bruger linjer til at producere billeder. Jeg fandt selvstudier om, hvordan man konverterer en raster -skærm til en vektordisplay, men processen var farlig og ville tage lang tid.
Trin 4: Løsning
Efter alle disse problemer kunne jeg finde en ret simpel løsning; et XY -oscilloskopemulatorprogram, der tog lyd som input. Da jeg fandt dette program, skiftede jeg fra at fokusere på at oprette et oscilloskop til at skabe en måde at producere en lydfil fra et billede til visning på et oscilloskop.
Oscilloskop -emulator
Trin 5: Kantdetektion og Matlab -program
Her er et grundlæggende rutediagram over mit program. Det starter med et billede, der indlæses i EdgeDetect.m MATLAB -programmet. Dette program konverterer det til et gråtonebillede og registrerer derefter kanterne i billedet. XY -koordinaterne for de detekterede kanter placeres i to arrays, der konverteres til en lydfil.
Trin 6: Eksempel: Instructables Robot
Her er et eksempel på processen med den instruerbare robot. Download først et billede af instruerbare robotten og gem det som "image.png" i din MATLAB -arbejdsmappe (samme sted som "EdgeDetect.m"). Sørg for, at billedet ikke har noget, du ønsker at blive opdaget, eller det kan tilføje en masse unødvendige koordinater til din lydfil. Kør EdgeDetect-programmet, og billedet konverteres til gråtoner, og har kanterne registreret og gemt som en lydfil med navnet "vector.wav". Åbn derefter lydfilen i Audacity eller et andet lydredigeringsprogram. Åbn dit oscilloskopemulatorprogram (link i forrige trin), indstil samplingshastigheden til 192000 Hz, tryk på start, klik på mikrofonknappen, og vælg linjen i indstilling. I Audacity skal du trykke på "shift + mellemrum" for at afspille lydfilen i en loop. Billedet skal vises på oscilloskopemulatoren.
Trin 7: Fejlfinding/eksempelfiler
Da jeg udviklede dette program, måtte jeg justere nogle indstillinger i programmet. Her er nogle ting at dobbelttjekke, hvis det ikke virker:
-Sørg for, at dit lydoutput føres ind i din linje på din computer, og at du har 2 separate (venstre og højre) lydkanaler
-Hvis billedet ikke læses af MATLAB -programmet, skal du muligvis redigere det i maling og gemme det som et andet format.
-På linje 61 i koden skal du sørge for at inkludere tallene fra kantdetekteringsskærmen. Programmet lægger normalt et rektangel rundt om det hele, som du kan skære ud ved at ændre det fra "i = 1: længde (B)" til "i = 2: længde (B)". Hvis du også har bestemte tal, som du vil medtage, men ikke vil medtage dem alle, kan du bruge firkantede parenteser til at få bestemte tal: "[1 3 6 10 15 17]"
-Hvis billedet ser rystet ud, og delene er overalt, skal du muligvis reducere antallet af prøver ved at justere "N" på linje 76. Jo enklere billedet er, desto lavere N kan være, men det bør være højere, hvis billedet er kompleks. Til robotten brugte jeg N = 5.
-Du kan også justere "Fs" på linje 86. Jo højere samplingshastighed, jo bedre ser billedet ud, men nogle lydkort vil ikke kunne håndtere højere samplingshastigheder. Moderne sange har en samplingshastighed på omkring 320000 Hz.
Anbefalede:
Arduino bil omvendt parkering alarmsystem - Trin for trin: 4 trin
Arduino bil omvendt parkering alarmsystem. Trin for trin: I dette projekt vil jeg designe en simpel Arduino bil omvendt parkeringssensorkreds ved hjælp af Arduino UNO og HC-SR04 ultralydssensor. Dette Arduino -baserede bilomvendt alarmsystem kan bruges til en autonom navigation, robotafstand og andre rækkevidde
Trin for trin pc -bygning: 9 trin
Trin for trin PC Building: Supplies: Hardware: MotherboardCPU & CPU -køler PSU (strømforsyningsenhed) Opbevaring (HDD/SSD) RAMGPU (ikke påkrævet) CaseTools: Skruetrækker ESD -armbånd/mathermal pasta m/applikator
Tre højttalerkredsløb -- Trin-for-trin vejledning: 3 trin
Tre højttalerkredsløb || Trin-for-trin vejledning: Højttalerkredsløb styrker lydsignalerne, der modtages fra miljøet til MIC og sender det til højttaleren, hvorfra forstærket lyd produceres. Her vil jeg vise dig tre forskellige måder at lave dette højttalerkredsløb på:
Trin-for-trin uddannelse i robotik med et sæt: 6 trin
Trin-for-trin uddannelse i robotteknologi med et kit: Efter ganske få måneder med at bygge min egen robot (se alle disse), og efter at jeg to gange havde dele mislykkedes, besluttede jeg at tage et skridt tilbage og tænke min strategi og retning. De flere måneders erfaring var til tider meget givende, og
Akustisk levitation med Arduino Uno trin for trin (8 trin): 8 trin
Akustisk levitation med Arduino Uno Step-by Step (8-trin): ultralyds lydtransducere L298N Dc kvindelig adapter strømforsyning med en han-DC-pin Arduino UNOBreadboard Sådan fungerer det: Først uploader du kode til Arduino Uno (det er en mikrokontroller udstyret med digital og analoge porte til konvertering af kode (C ++)