Servo kalibrator GUI



För mina projekt använder jag flera standard servon som kontrolleras av ADAFRUIT PWM SERVO föraren som i sin tur kontrolleras av ett python-skript som körs på Raspberry Pi.

Varje gång jag re / montera ett horn på en servo som jag behöver att anpassa "noll vinkel". Om jag byta en servo, kan det ha olika omvandling av PWM till vinkel position. Det tog så mycket av min tid att justera dessa parametrar med varje förändring beslutat att skriva enkla Tkinter GUI som gör det möjligt att ställa in, kontrollera och spara:

* PWM värde för "noll vinkel" (pwm0)

* omvandling av rotationsvinkeln i graden till PWM förändring (faktor)

övre/undre gränser för vinkeln att skydda maskinvara från skador (pwmHigh, pwmLow)

* kanal ID 0-15 av PWM generator som servo är ansluten

Formeln konvertera ange vinkeln (A) till PWM värde utfärdas till servo är följande:

PWM = A * faktor + pwm0
om pwm < pwmLow:

PWM = pwmLow

Elif pwm > pwmHigh:

PWM = pwmHigh

Filmen visar hur man kan använda denna GUI att experimentellt bestämma: pwm0, faktor, pwmLow, pwmHigh. I denna film jag ville ha den svarta pilen att peka på röda "0" när jag ställa in vinkeln A vid 0 grader på skalan och pilen bör aldrig överstiga den kantiga sortiment präglas av svart "X" och "Y". När servo heter 'futuba-S3003' är kalibrerad sparas parametrarna i en python ättikslag.

Man kan sedan använda de inställningarna som visas i denna korta programmet:

armConfName ="./servo.futuba-S3003.conf
armConf=pickle.load (öppen (armConfName, "r"))
skriva ut "laddade arm conf", armConfName
arm = ServoDriver()
arm.setupController(armConf['freq'])
arm.config(armConf)
för ang i [10., 20., -20, -10.]:
arm.setAngleDeg(ang)
skriva ut "Ange armAngDeg = %s, status = %s ' %(ang,arm.status)
Time.Sleep(2.)
skriva ut "servon STOP & RELAX"
arm.fullStop()

Denna kod är tillgänglig från bitbucket GIT repo som:

git clone

Det förväntas du redan har installerat på din R-Pi (och testade) Adafruit biblioteket, som beskrivs här

https://learn.adafruit.com/adafruit-16-Channel-se...

Med all kod är i stället rättvis sjösätta servo kalibrator som "gksu" (annars grafik kan inte tunnel). Kontrollera också att din servo är ansluten till PWM kanalen visas på GUI

$ gksu./servoCalibMain.py

När du har sparat kalibrering i till pickle, använda den för att flytta servo med bara några rader för python

$ sudo./exampleRun.py

Lycka till

Jan

Relaterade Ämnen

Hur man gör Arduino-kontrollerade Intelligent Time-Lapse fotografering

projekt: ljuskänsligt och justerbar dynamiska Time-Lapse fotografiAv Holden Leslie-BoleUngefärlig kostnad: $70 utan kameranJag har gjort några time-lapse fotografering med min GoPro HERO3 ett tag nu och jag har fått några bra bilder. Det har varit gå...

Avlägsen kontrollerade Pan och Tilt huvud

jag alltid velat ha en avlägsen kontrollerade pan och tilt huvud. Kanske var det för min videokamera, en gummisnodd shooter eller en vatten pistol aimer. Det spelar egentligen ingen roll vad du sätter på översta däck (så länge det inte är för tunga),...

Hinder att undvika Robot V2

nyligen gjorde jag en instructable på en enkel hinder undvika robot. I detta instructable jag kommer att genomföra en panorering PING))) sensor, till skillnad från den tidigare roboten som har sensorn var stillastående. Jag kommer att använda denna t...

Arduino mest värdelösa maskin någonsin projekt

jag ville få in Arduino projekt och presentera mina söner till robotics med Arduino. Så jag tänkte om byggnad använder ett enkelt projekt som gjort av en Arduino Uno och ett servo. Jag såg en stor post i Instructables om som den mest värdelösa maskin...

Automatisk grind knapplåset

Mål: Lista ut ett sätt att låsa våra dubbel-swing gate från båda sidor, att skydda gården. Låsmekanismen bör hålla olåst, eftersom vi ofta lämnar grinden öppen när du arbetar alla dag på gården.Bakgrund: Vi har en dubbel-swing gate, vilket innebär at...

Resinators: DIY 3D utskrift

Vi är ett team av tre praktikanter på TI i sommar som arbetade på en design utmaning tillsammans. Årets 2014 praktikant design utmaning på Texas Instruments med en DIY tema. Vår första tanke var, vad är något som inte är extremt tillgängliga eller tä...

Aktiva kamerastativ

[kategori: 18 +]Digitala kameror är underbara enheter att göra experiment med bilder mycket lätt.Du kanske drömmer om funktioner som inte är tillgängliga i din kameramenyn.Detta projekt hjälper dig att förverkliga följande:-cylindriska eller halvrund...

Simning Robot med en Arduino Uno

Hej alla, detta är min första Instructable, så snälla gå lätt på mig.Så har du någonsin velat bygga en liten båt som robot som simmar mot ljus, det är vad detta Instructable är. Detta projekt är för alla från Noob till Pro.Saker du behöver veta:Hur l...

Servo GUI

Vinklar och hastighet servomotorer styrs av programmering. Så ger denna handledning det till din musklick.Här visar jag hur man designar ett grafiskt användargränssnitt för kontrollerande hastighet och vinkel på en DC-servomotor med arduino. Med denn...

Gimbal kalibrering med IMU MPU-6050

Vissa Kardansk upphängning är svårt att kalibrera eftersom det finns inget sätt att grafen position i realtid.Detta instructable kommer att visa dig hur man diagram placera av en 2 axeln gimbal för att trimma en PID. För att uppnå att jag använder en...

Hur man gör en Fullyrotational Servo

i detta Instructables kommer jag visa dig hur man gör en fullyrotational servo från en standard 9g servo.Detta är min första Instructables så jag hoppas ni gillar den.Ledsen för misstag, jag är nederländska.Steg 1: De delar och verktyg du behöver För...

Motion Tracker med PIRs, Arduino och en Servo

detta är min motion tracking huvudet med fyra PIRs (passiva infraröda sensorer), en Arduino Uno styrelse och en servo.Det är ett enkelt sätt att ge intryck av att huvudet (birdy) faktiskt följer rörelsen.Det är mycket lätt att bygga men lite tidskräv...

Servo kontrollerad labyrint

vet du detta klassiska trä labyrint spel med två rattar för X och Y rotation?Så, har jag beslutat att ändra ett genom att ansluta två standard servon till rattar och låt en mikrokontroller (ATmega32) spela spelet.Poäng:-Att CarlS för inspiration.-Att...

Rörelse aktiverat Servo

detta är en grundläggande rörelse aktiverat servo som kan användas i en mängd olika projekt, och det är mycket enkel och lätt att göra. Om du använder det kreativt, kan du göra en massa saker med den. Till exempel använt jag mina för att skapa en rör...

Bygga ServoBoss, servo testare från GadgetGangster.com

Detta är ServoBoss. Det är en servo testare kan köra upp till tolv servon samtidigt.Satsen är tillgänglig från GadgetGangster.com Det har för närvarande åtta program.Program 1 - Set millisekunderJusterar utdata till tolv servon (två grupper med sex)...

COG-bränna ben Joint (hållbara Servo)

Den här komponenten måste en liten historia för att förstå våra motiv.I December 2013 var Team Mojavaton (nu Team Grit) inbjuden till #DARPADRC prövningar. Vi använde en off hyllan servo för alla manöverdon. Vi anser att vi utformat inom specifikatio...

Kontinuerlig Servo Mod

Servon är fantastiska. De är i grunden en motor och en växellåda och en styrkrets i en. Det enda problemet är att mycket av det är gömda. Jag kommer att visa dig att ändra en standard servo för att möjliggöra kontinuerlig rotation. Detta är verkligen...

Tapsterbot 2.0: Servo-Arm församling

Tapsterbot 2.0 är en öppen deltabot, som syftar till att hjälpa testning av mobila applikationer på riktiga enheter (iOS, Android, etc), men som skulle kunna utgöra en utmärkt introduktion till robotics och Arduino.Här monterar vi 3 identiska Servo-A...

Kalibrera servon för fäste/robot Arm

Hej alla.Jag arbetar på en Arduino baserad Robot Arm. Vissa delar anlände, vissa inte, och jag hade vissa problem med de som kom, än jag gjorde detta projekt.Du behöver-Skärbräda-Servon och parentes/klor för dem.-Jumper tråd-16 * 2 LCD (eller bättre)...