Indholdsfortegnelse:
Video: Tims PCA9685 -controller: 5 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:26
Mange projekter udført med Arduino involverer brug af en servo.
Hvis du kun bruger en eller to servoer, kan disse styres direkte fra en Arduino ved hjælp af et bibliotek og tildele stifter til dette.
Men til projekter, der har brug for mange servoer, der skal styres, er (muligvis give det sit fulde navn) PCA9685 16-kanals, 12-bit PWM Fm+ I2C-bus LED-controller muligvis det bedre valg.
PCA9685 LED -controlleren, selvom den er designet til at styre LED'er, kan konfigureres til at styre Servo. (Datablad)
PCA9685 kommunikerer via I2C og har 64 mulige adresser, det betyder, at 64 af disse enheder kan være daisy -lænket efter hinanden, hver med 16 servo eller LED tilsluttet hver. Det er i alt 1024 tal, der kan styres fra en Arduino.
Nu har vi et projekt, der har mange Servo at styre, lad os sige en firbenet robot. Hvert ben har to servoer til at styre det. (vi starter enkelt, i teorien kan min app styre 1024)
Opsætning af otte servo, find trimindstilling for hver, bestemmelse der max. og min. stillinger, kan være meget tidskrævende.
At skrive og omskrive kode for at se, hvad der sker, kan være lidt smertefuldt.
Så jeg beslutter mig for at lave en applikation for at gøre tingene enkle og hjælpe med at finde hver nødvendige Servo -indstilling og kunne køre sekvenser (script) for at teste kommandoer sendt til servoen.
Trin 1: Forbindelser
"loading =" doven"
Scriptafsnittet er den sjove del, det er her du kan oprette sekvenser af Servopositioner.
Få dit projekt til at gøre, hvad du vil have det til at gøre.
- Knappen Tilføj værdi tilføjer de aktuelle skyderindstillinger.
- Knappen Tilføj forsinkelse tilføjer en forsinkelse i millisekunder, der er angivet i feltet ud for knappen.
- Knappen Tilføj adresse tilføjer en kommandokontakt til en anden PCA9685 (skift adresse til øverst til venstre) den bruges også til at skifte tilstand, Servotilstand eller LED -tilstand.
- Kør script F -knappen, kører det aktuelle script fremad.
- Kør Script R -knappen, kører det aktuelle script omvendt.
- Afkrydsningsfeltet Loop får det aktuelle script til at køre igen og igen, når der trykkes på en af Run Script -knapperne. Fjern markeringen i afkrydsningsfeltet for at stoppe sløjfen.
- Knappen Ryd script, gør netop det, det rydder alle scriptkommandoer.
- Knappen Load indlæser et tidligere gemt script.
- Knappen Gem gemmer det aktuelle script.
Bemærk!
Jeg har ikke skrevet noget script, der tjekker ind i applikationen, scripten skal følge følgende regler:
Én linje pr. Kommando, værdier adskilt af et mellemrum.
- Servokommando starter med "S" efterfulgt af seksten værdier, hver værdi mellem 0 og 600
- LED -kommando starter med "L" efterfulgt af seksten værdier, hver værdi mellem 0 og 4095
- Dely -kommandoen starter med "D" efterfulgt af en værdi mellem 0 og 10.000
- Adressekommando starter med "A" efterfulgt af en værdi og et ord. Værdien mellem 0 og 64. Ordet er "Servo" eller "LED".
Applikationen kan styre Servo eller LED. Sæt ikke LED og Servo på det samme Breakout Board, Servo og LED har brug for forskellige frekvenser for at køre korrekt.
Hvis du forsøger at styre servo med LED -indstillingerne, kan de freak out, det vil ikke skade dem, men hvis de er installeret i et projekt, vil du måske ikke have, at de flytter til noget besiddelse.
Jeg har lavet video af et enkelt script.
Trin 5: Epilog
Efterhånden som instruktionerne går på Instructables, forventer de fleste mennesker at ende med et fysisk element i slutningen af en instruktion.
Jeg finder, at der ikke er nogen realistisk kategori for software.
Jeg formoder, at du kunne klassificere det som et værktøj, men instruktionen er ikke, hvordan du laver værktøjet, det er, hvordan du bruger det.
Forhåbentlig ved at have et værktøj som dette, vil folk være i stand til at lave bedre projekter med Arduino ved hjælp af Servoer eller LED -arrays.
Undskyld venligst videoen af projektet i aktion, jeg brugte et ESP32-CAM breakout board med et andet program, jeg lavede til at se billeder fra ESP32-CAM.
REDIGERE
Jeg har forbedret det.
Opdateringer findes her: Tims_PCA_9685_Controller
Anbefalede:
Arduino Sådan tilsluttes flere servomotorer - PCA9685 Tutorial: 6 trin
Arduino Sådan tilsluttes flere servomotorer - PCA9685 Tutorial: I denne vejledning lærer vi, hvordan du tilslutter flere servomotorer ved hjælp af PCA9685 -modul og arduino.PCA9685 -modul er meget godt, når du skal tilslutte flere motorer, du kan læse mere om det her https : //www.adafruit.com/product/815 Se Vi
Tims lineære dias: 11 trin
Tims Linear Slide: Jeg laver en robot, som jeg vil kunne tegne på den overflade, den bevæger sig over. Så jeg har brug for noget til at hæve og sænke en pen. Jeg har allerede lavet en draw -bot, som bruger en servo til at lave Jeg håber, at robotten, jeg arbejder på i øjeblikket, vil gøre alt
Tims printkort (plottet printkort): 54 trin (med billeder)
Tims PCB (Plotted Circuit Board): Dette er den proces, jeg bruger til at oprette et brugerdefineret printkort til mine projekter. For at lave ovenstående: Jeg bruger min XY Plotter med en Scribe til at fjerne en ætsende resitfilm for at udsætte kobberet for etseren .Jeg bruger min XY -plotter med en laser til at brænde blæk ind i
Sådan adskilles en computer med nemme trin og billeder: 13 trin (med billeder)
Sådan adskilles en computer med nemme trin og billeder: Dette er en instruktion om, hvordan du adskiller en pc. De fleste af de grundlæggende komponenter er modulopbyggede og nemme at fjerne. Det er dog vigtigt, at du er organiseret omkring det. Dette hjælper med at forhindre dig i at miste dele og også ved at lave genmonteringen til
Sådan styrer du husholdningsapparater med fjernsyn med fjernbetjening med timerfunktion: 7 trin (med billeder)
Sådan styrer du husholdningsapparater med fjernsyn med fjernbetjening med timerfunktion: Selv efter 25 års introduktion til forbrugermarkedet er infrarød kommunikation stadig meget relevant i de seneste dage. Uanset om det er dit 55 tommer 4K -fjernsyn eller dit billydsystem, har alt brug for en IR -fjernbetjening for at reagere på vores