Fjärrstyrda robotarm (MeArm) med pfodApp (3 / 3 steg)
Steg 3: Problem med MeArm
Det finns ett antal frågor med fjärrstyrning av MeArm V0.4 den allvarligaste som är instabiliteten i roterande position.
Instabilitet av roterande Servo--FIXEX 16 augusti 2015
Första en bit information på servon. Arduino Servo biblioteket skickar servon en befallde position med hjälp av varierande puls bredd. En puls 544uS lång betyder 0 grader och en 2400uS puls betyder 180 grader. Servo åtgärderna pulsen att bestämma var är bör och sedan roterar tills dess inre lägesgivare matchar befallde position.
Nu är problemet att när armen är som roterade sin vikt och flexibilitet innebär att när servo slutar rotera armen fortsätter röra och skjuter servo förbi där det ska vara. Servo ser att dess interna lägesgivare är fel och börjar att köra tillbaka i motsatt riktning. Men när servo stannar igen samma sak händer och armen igen skjuter servo ytterligare.
Mycket kraftfull servon och rörelserna är ond och så en svängning är inställd. I mitt fall armen bara skakade baklänges och framlänges. Jag kunde dämpa ut med min hand, men någon liten stund eller bula i armen kan ställa in den igen.
Detta påverkade endast rotation servo, In/ut, upp/ner och gripdon där OK. En re-design av huvudsakliga roterande uthärda kan förbättra situationen men jag är inte säker. Extra motstånd i rotation skulle bidra till att dämpa dessa svängningar ut. Förhoppningsvis blir V1.0 av MeArm bättre.
Uppdatering från phenoptix.com 26 januari 2015: "titta på din bygga och en på mitt skrivbord, som jag byggt på fredag och stötte på problem med panik, jag tror att problemet kan vara våra nya, starkare, digitala servon. Jag ser in i problem och kommer att låta dig veta när jag kommer upp med ett botemedel."
Uppdatera 16 augusti 2015: Jag fästad min problem med en plast spacer mellan bas och undersidan av armen. Phenoptix säger de löste problemet genom att återgå till med analoga servon i stället för de digitala. De levereras endast digitala servon för en kort tid och ben säger att han är glad att byta dem för analoga dem om det behövs.
Ömsesidiga beroendet av In/ut, upp/ned spänner.
En annan fråga är att det tillåtna utbudet av rörelse på In/ut och upp/ner beror på varandra. Det är kvar som en övning för läsaren att avgöra och kod bullergränserna beroende av varandra.
Servo makt leverans störningar--Fast 16 augusti 2015
En annan fråga är att servon dra mycket ström som de verkar. Utan 1000uF kondensatorn Uno återställer och/eller Bluetooth sköld förlorar anslutning regelbundet. Med 1000uF kondensatorn händer det sällan men fortfarande ibland. Det behövs en extern försörjning. USB via Arduino är inte tillräckligt. Se nedan.
Uppdatering från phenoptix.com 26 januari 2015: "Om du sätta servon på ditt Vin i stället för 5V och makt från en 6V (idealiskt 3A) strömförsörjning får du mindre bruna outs från brist på makt och återställer från tillbaka emf. USB är bara bra för 1A innan polyfuse på ardunio återställs! "
Jag håller inte helt med detta råd för ett antal skäl:-
en) 6V 3A leveranser är inte en handelsvara objekt i motsats till 5V USB levererar och
b) servon är dimensionerade för 4.8V så en 6V leverans är 20% över märkspänning och
c) 6V Vin är mindre sedan rekommenderade tillgången för Arudino på grund av spänningen släppa i ombord regulator.
Så mitt förslag är att använda en väl reglerad 5V 3A eller högre leverans direkt ansluten till Uno 5 v järnväg (via prototyp styrelse + 5 v järnväg). Obs: leverans måste vara väl reglerad (dvs. smidig Matningsspänning) som det befogenheter mikro-processor direkt.
Uppdatera 16 augusti 2015: Bort (unsoldered) polyfuse från Uno styrelsen och ansluten en 3A 5V leverans direkt till 5V järnväg. Inga mer problem. Att ta bort polyfuse förhindrar USB leverans slåss med extern 5V leverans
Slutsats
Medan det var bra att göra armen och fjärrstyr det från min Android. . En spacer löst svängningar i den roterande positionen. Dessa svängningar bör inte ske i senare modeller. En extern försörjning är viktigt för tillförlitlig drift. Det följande projektet kommer att visa hur jag interaktivt program armen att följa en väg.