Enkla självbalanserande Robot med Galileo Gen 2 (4 / 6 steg)

Steg 4: Android App



Från början av detta projekt var ett av mina mål att utveckla en kamrat Android app för att möjliggöra kontroll av roboten. Som min SW färdigheter är fortfarande "under utveckling", jag var glad att snubbla över utvecklingsmiljön MIT AI2 Android app - det visade sig vara perfekt för vad jag ville göra.

Jag tillbringade tid med ett antal tutorials att få en känsla för hur saker var setup, och med Whatakuais och Pura Vida Apps på hur du kan utnyttja i BT-gränssnittet. Men hellre än att spendera tid med att förklara MIT AI2, kommer jag att beskriva hur app är tänkt att användas och hur block struktur.

App är en enkel samling av knappar och reglage till tillåta förbrukaren till konfigurera och styra roboten. Nedan följer en beskrivning av de olika app kontrollerna.

· BT modul: varje gång programmet startas, eller robot makten cyklat, måste användaren att ansluta till robot BT modul. Detta är den knapp som underlättar att åtgärder.

· Standby: När roboten är ansluten till BT, och Galileo styrelsen har startat, roboten startar i beredskapsläge. Denna knapp används för att instruera roboten att ange den aktiva, balansera staten. Observera att roboten endast kommer att försöka balansera om det är inom 2deg för vertikal, så även om denna knapp rapporterar "Aktiv", måste du placera roboten nära vertikalt att börja balansera. Denna knapp kan användas för att växla mellan "Standby" och "Aktiv" som önskas.

· PID: Denna knapp används för att tillåta användaren att ändra "P", "I" och "D" värden för PID-regulator i roboten när roboten är i drift. När du trycker på, det kommer att hämta PID värden från roboten och visa dem under respektive "+" och "-" knappar. Öka eller minska värdet för varje parameter är svåra inkodat i robot skissen.

· FW Ver: Detta är robot skissen Firmware version. Jag gick igenom många versioner av skisser och flera SD-kort, så jag fann det mycket bra att veta vilken version var igång på roboten. Detta värde är svårt inkodat i skissen med en #define uttalande, och skickas till Android App när roboten går från viloläge.

· Vbat: Batterispänningen från roboten, skickas varje sekund

· HB: Hjärtslag indikator. Texten ändras en gång per sekund, vilket betyder skissen är fortfarande kör på roboten.

· Rulle kalibrera: baserat på den modul du har och hur den är monterad på roboten, kan vertikal inte läsa som 0deg. Detta gör att du "kalibrera" vad den MPU läser när roboten är lodrät. Den "+" och "-" knappar delas mellan rulla kalibrera och Motor Slack, så enda kan ändras vid varje given tidpunkt. Det aktuella rulla kalibrera värdet hämtas från roboten när knappen markeras.

· Motoriska Slack: De inriktade DC motorer jag använde hade en zon i de lägre PWM värden som inte resulterar i någon motoraxeln rörelse. Detta resulterar i en icke-linjär kontroll för PID-utgång. Jag tyckte att genom att "hoppa" över dessa lågt PWM-värde (motor slack) i PID utdata, kan du bättre balans roboten. Denna knapp kan du hämta det aktuella värdet på roboten och storleken på de "hoppet"

· Hastighet: Detta tillåter användaren att styra roboten hastighet. På grund av en begränsning i MIT AI kompilera miljön tillåter app inte multi-touch, så du inte kan ändra skjutreglagen hastighet och riktning samtidigt. En sökning på internet på ämnet visar det en verk runt omkring att tillåta multi-touch operation, men jag har ännu inte bedrivit det.

· Riktning: Detta tillåter användaren att styra roboten riktningen.

· Avsluta: avslutar Android App

Jag hittade den visuell metod används av MIT AI2 för att utveckla app detaljer på avsnittet "Block" att vara lite besvärligt - men jag kommer att låta dig dra dina egna slutsatser. Jag lyckades inte ta en skärmdump av block layouten, men de är ordnade i tre kolumner. Du bör kunna i importera .iai fil till MIT AI2 och Visa de för dig själv.

Den första kolumnen implementerar knapparna Quit, BT modul, Standby, Data Log, hastighet, riktning, rulla fel och Motor Slack.

Den andra kolumn genomför PID aktiverar knappen, och P, jag och D "+" och "-" knappar. Den implementerar också rulla felet och Motor Slack "+" och "-" knappar.

Den tredje kolumnen implementerar Bluetooth timern, används för att kontrollera gränssnittet för mottagna information och block för att extrahera och genomföra kommandon från roboten. Det tog några försök och misstag att få Bluetooth-data mottagning och kommandot utvinning arbetar, och resultatet är lite brute force-ish, men till slut fungerade det ganska bra.

Se Steg
Relaterade Ämnen

Gör en självbalanserande Robot med Arduino UNO

Själv balansera Robot är mycket intressant. Många vänner runt omkring oss försökte göra en, men de encounted en hel del chanllenges bland annat bristen på strukturerna som lätt-till-montering, de lämpliga elektroniska kretsarna och program. Så jag be...

Självbalanserande Robot med LCD-

Den modifierade versionen av min mpu6050 balansera robot stabilare med LCD och exempel på ansluta 2 i2c på samma stiftvideo 1video 2Steg 1: Steg 1: ◾L298N dubbla motor förare breakout ombord◾L298N dubbla motor förare breakout ombord12 V BATTARY9 V BA...

Enkla objekt avoider robot med Actobotics Runt Rover Peewee chassi och en Arduino

Det finns många sätt att bygga en robot, från början ett kit, ett färdigt system eller en kombination av dessa metoder. Vägen tar vi här kommer att vara mestadels från ett kit och andra objekt som en Arduino styrenhet, motorn förarens och sensorer fr...

Rumstemperatur upptäckten med Galileo Gen 2 och Grove Kit

Jag kommer att visa dig hur du ställer in en interaktiv rumstemperatur projekt med LCD RBG och temperatur sensor använder Intel Galileo och grove kit.Steg 1: Hämta Arduino IDE för Intel Galileo och temperatur sensor koden.Steg 2: Öppna koden i IDE, v...

Grove startpaket med Intel Galileo Gen 2: Komma igång

När jag började med IoT var jag alla förvirrade om elektronik materialen,motstånd och kretsar, då jag fick Seeed Studio's Grove Starter Kit plus. Med detta har vi att bara koppla in modulerna som sensor istället för att hantera det genom lödning elle...

Intellekten Galileo Gen 2 ljussensor med utsäde Studio startpaket

Här ska jag visa dig hur man skapar en enkel Intel Galileoprojektet Gen2 med en ljussensor och en LCD-display.I grund och botten när det finns ljus displayen är tänkt att Visa "Det är Light" och "Göra saker". Den "Göra saker"...

Streaming USB Webcam med Intel Galileo Gen 2

Välkommen!Idag lär vi dig att strömma en USB webbkamera med Intel Galileo Gen 2.Vi måste av "apt-get" så en Debian Linux bygga behövs på din Galileo.Följ min Instructable för att bygga en Debian Linux-distributionen för Intel GalileoKompatibla e...

Hur man skjuter timelapse-video med Intel Galileo Gen 2

Nedan visar vi dig hur man skjuter en timelapse-video med Intel Galileo Gen 2 eller en liknande ombord.Vi använder en 2,5 mm-uttag att ansluta styrelsen till en Canon DSLR och sedan kontrollera slutaren med vår styrelse.Allmänhet Canon digitala syste...

B-robot EVO. Självbalanserande robot

Hur fungerar det?B-ROBOT är en fjärrkontrollerad självbalanserande arduino robot som skapats med 3D tryckta delar. Med endast två hjul är B-ROBOT kan bibehålla sin balans hela tiden med hjälp av sin interna sensorer och köra motorerna. Kan du styra d...

Min första självbalanserande Robot Diy lätt Under 25 år

Detta är min första självbalanserande robot och jag söker på internet efter andra självbalanserande projekt och jag designar min gruva robot att vara enkel och billig.I denna instructabile jag whill berätta dig steg för steg hur man bygger din robot...

Labyrint Problemlösaren Robot, med artificiell intelligens med Arduino

(Om du gillar detta Instructable, glöm inte att rösta på det (ovan: högra hörnet flaggan). Rex, roboten tävlar på ROBOTICS och sensorer tävlingar. Tack så mycket! ;-)Detta Instructable utvecklades på mitt senaste projekt: rad efterföljare Robot - PID...

Hur till spår din Robot med OpenCV

UPPDATERING: Låter göra robotar, mitt hem digital hackerspace, köptes av RobotShop. Jag vill inte gå in, men de nya ägarna förbjudit mig själv och de flesta veteran medlemmarna. Som sagt, de flesta av länkarna där kommer att brytas. Lyckligtvis kunde...

Kontrollera en Roomba robot med Arduino och Android

(Om du gillar detta Instructable, glöm inte att rösta på den - ovan: högra hörnet flaggan. Det tävlar på AUTOMATION tävling. Tack så mycket! ;-)Som en av robotteknik tävling 2016 vinnarna här på Instructables fick jag som pris en iRobot Roomba Create...

Bygga din Internet kontrollerad Video-Streaming Robot med Arduino och Raspberry Pi

< the Instructable och koden är redo. Njut! Lämna en kommentar med du feedback! >Jag är (aka LiquidCrystalDisplay / Itay), en 14 år gammal student från Israel lärande i Max Shein Junior High School för avancerad vetenskap och matematik. Jag gör dett...

SainSmart InstaBots upprätt Rover (själv balansera Robot med Arduino)

Upprätt Rover är en självbalanserande robot som ritades av SainSmart. De verkligen gjort det enkelt. Som ni ser, finns det bara 8 ledningar på robot och 8 ledningar på handkontrollen. Så låt oss ta reda på hur det fungerar!DELAR I RUTAN3 x Potentiome...

Linux Tutorial för Intel® Galileo Gen 2

Man kan felaktigt tro att Intel® Galileo Gen 2 som bara en avancerad, mer kraftfull version av Arduino Uno som råkar vara lager ovanpå ett Linux-system.Det finns faktiskt mer att göra än det och förhoppningsvis kommer denna tutorial visar den större...

Bygga ett självbalanserande fordon med mDrawBot

Jag fick en mDrawBot från Makeblock för några dagar sedan. Detta awesome robot kit är ett kicken project nu. Idag omvandla jag det till ett självbalanserande fordon med en MPU6050 modul. Kolla in.Steg 1: Ramen Bara tre stycken, ganska enkelt.Steg 2:...

Hemgjord rimliga Robot med Bluetooth

INTRODUKTIONAlltid velat ha en Roomba, men är det för dyrt för en bit plast? Vad sägs om uppfinna egna? Jag själv hitta vakuum cleaner / sweeper robotar alltför dyrt och överskattat. Det finns inget absurt i det som du inte kan göra din egen. Göra nå...

Bygga en liten Robot: gör världen är minsta hjul Robot med en gripare.

Bygga en 1/20 kubiktum robot med en gripare som kan plocka upp och flytta små objekt. Den styrs av ett Picaxe mikrokontroller. Vid denna tidpunkt, tror jag detta kan vara världens minsta hjulförsedda robot med en gripare. Som utan tvekan kommer att f...