Elektriciteit leren beheersen met een Raspberry Pi Pico Oscilloscoop
Oscilloscopen zijn krachtige elektronische testinstrumenten die voornamelijk worden gebruikt om elektrische signalen in elektronische schakelingen te visualiseren en te analyseren. Ze zijn uiterst nuttig. Maar ze zijn ook extreem duur. In deze tutorial laat ik je zien hoe je een goedkope en eenvoudige oscilloscoop kunt maken met een Raspberry Pi Pico.
Deze oscilloscoop - wat ik een "Picoscilloscoop" noem - draait om een Pico en de Scoppy app op een Android-toestel. Je kunt er laagspanningssignalen mee detecteren en analyseren.
Daarom laat ik je hier zien hoe je in 5 eenvoudige stappen een supergoedkope oscilloscoop in elkaar zet met behulp van een Raspberry Pi Pico W en Scoppy.
Ik doe dit met een smartphone, maar je kunt dit ook met een tablet doen. Zolang je Android 6.0 of nieuwer hebt, zou je er klaar voor moeten zijn.
WAARSCHUWING: Elektriciteit is gevaarlijk. Wees voorzichtig en zorg ervoor dat u de oscilloscoop niet gebruikt op een manier die u of anderen zou kunnen beschadigen. Deze Pico Oscilloscoop werkt alleen met signalen met een lage spanning en lage frequentie en mag alleen in die gevallen worden gebruikt.
Deze oscilloscoopopstelling is ontworpen om spanningen onder 3,3V te detecteren. Als je hoger wilt, kun je meer informatie vinden hier. Maar hier spelen we niet met iets dat dat bereikt.
Wat je nodig hebt
Ik gebruik hier een paar componenten:
- Een Raspberry Pi Pico W
- Een Android-smartphone
- Een broodplank
- Enkele mannelijke startkabels
- Een USB-naar-micro-USB-kabel die gegevens kan overdragen
- Een USB-OTG-adapter
Echt, alles wat je nodig is een Pico, een Android-apparaat, de USB-kabel en de USB-OTG-adapter om alles in te stellen. Maar daarmee kun je niet veel doen.
Stap één: Download de Pico W-firmware
De Scoppy firmware is beschikbaar voor zowel de Pico als de Pico W. Je kunt de firmware hier downloaden:
Je krijgt dan een .uf2-bestand dat je naar je Pico moet flashen.
Houd de knop BOOTSEL ingedrukt en sluit je Pico aan op de computer. Zorg ervoor dat je een USB-kabel gebruikt die gegevens kan overdragen. Als dat niet het geval is, gebeurt er niets.
Als je de juiste kabel gebruikt, kun je de knop BOOTSEL loslaten en verschijnt er een nieuwe map: RPI-RP2. Je zou ook de LED op je Pico moeten zien knipperen.
Plaats het .uf2 bestand in de RPI-RP2 map en het zal automatisch worden uitgeworpen na de bestandsoverdracht.
Nu is je Pico klaar voor gebruik.
Stap twee: Scoppy downloaden op je Android
Scoppy is een gratis app die je direct kunt downloaden in de Google Play Store. Je kunt ook upgraden naar Scoppy Premium, waarvoor je op het moment van schrijven eenmalig €2,29 moet betalen.
Ik denk dat je zult merken dat de gratis versie goed genoeg is voor veel doeleinden, maar de betaalde versie biedt wel extra functionaliteit. Dus als je van plan bent om Scoppy te gebruiken voor wat gecompliceerdere setups, dan is premium waarschijnlijk het geld waard.
En hij is aanzienlijk goedkoper dan alle andere oscilloscopen die je kunt vinden!
Stap drie: Plug je Pico W in het breadboard
Je hoeft geen breadboard te gebruiken, maar ik vind het altijd makkelijker voor dit soort projecten. Ik heb dus een Pico W met een header eraan vast, zodat ik hem stevig in mijn breadboard kan duwen.
Je kunt altijd zelf een header solderen als je die niet hebt.
Wees voorzichtig wanneer je de Pico in het breadboard duwt om ervoor te zorgen dat je niet per ongeluk een van de headerpennen breekt.
Stap Vier: Bevestig de Pico W aan je Android
Je moet de USB-OTG-adapter aansluiten op je telefoon en vervolgens de gegevensoverdrachtkabel aansluiten op de Pico W. USB-OTG (on-the-go) is een specificatie die het mogelijk maakt om je smartphone te laten fungeren als een USB-host.
Misschien moet je USB-OTG inschakelen op je telefoon. En ik moet vermelden dat sommige smartphones geen USB-OTG-mogelijkheden hebben. Maar meestal zou je op nieuwere telefoons geen probleem moeten hebben.
Om USB-OTG in te schakelen, moet je meestal gewoon naar Instellingen > Systeem > OTG-verbinding gaan.
Op mijn telefoon ziet het er bijvoorbeeld zo uit:
Stap Vijf: Je Picoscilloscoop controleren!
Hier heb je een eenvoudige male-to-male jumper kabel nodig. We sluiten de ene kant aan op GP26 en de andere kant op GP22. Zo ziet het eruit:
GP26 is een van de analoog-digitaalomvormer (ADC) pinnen op de Pico. In de Scoppy app komt dit overeen met kanaal 1, omdat het ADC0 is. GP27 komt overeen met kanaal 2, omdat het ADC1 is.
Als je een verwijzing naar de GPIO-pinnen nodig hebt, kun je dit schema bekijken:
Als alles goed werkt, zou je naar Scoppy moeten kunnen gaan en op "Run" drukken en ervoor zorgen dat het is ingesteld op Kanaal 1 voor GP26 en Kanaal 2 voor GP27.
Je zult iets zien dat er als volgt uitziet:
En dat is het! Je bent klaar om te gaan spelen met je nieuwe oscilloscoop! Je kunt de Horizontale TIJD/DIV verhogen als je wilt dat de pieken en dalen verder uit elkaar liggen op de visualisatie. Je kunt ook de verticale TIME/DIV verhogen als je wilt dat de pieken en dalen verder uit elkaar lopen op de app.
Conclusie
Als je meer details wilt, kun je kijken op de Scoppy GitHub repository hier.
Op GitHub kun je ook de volgende specificaties vinden voor zowel de oscilloscoop als de logic analyzer functies van Scoppy:
Specificaties oscilloscoop:
- Max. Bemonsteringssnelheid: 500kS/s (gedeeld tussen kanalen)
- Max. Analoge bandbreedte: 150 kHz
- Tijd/Div: 5us - 20secs
- De geheugendiepte is afhankelijk van de bemonsteringssnelheid. Deze varieert tussen 2kpts (gedeeld tussen kanalen) en 20kpts in Run-modus en tot 100kpts voor single shot-opnames.
- 2 kanalen
- Automatische en normale triggering
- Cursors
- X-Y modus
- FFT
- Draadloze connectiviteit
Specificaties logische analyser:
- Max. Bemonsteringsfrequentie: 25MS/s (per kanaal)
- Tijd/Div: 50ns - 100ms
- 8 kanalen
Als je op zoek bent naar andere projecten voor je Raspberry Pi Pico, bekijk dan zeker onze Paragon Projecten serie:
Als je vragen hebt of problemen tegenkomt, kun je hieronder reageren!
Wat ga je doen met je nieuwe Picoscilloscoop?
Waar vind je die Premiumversie?