ToBe Automation - färg sorterare robot - introduktion (6 / 7 steg)

Steg 6: ToBe Automation - färg sorterare robot - Artibox programmering



Program för Artibox styrelsen

Header-fil att hålla poserna

//
ToBeAut_Robotics.h
//
//
Skapad av Tomas Rus på 01/06/16.
//
//
#ifndef ToBeAut_Robotics_h
#define ToBeAut_Robotics_h
#include
hårdkodad huvudsakliga poser
PROGMEM prog_uint16_t homepose [] = {5 492, 185, 893, 757, 512}; hemma
PROGMEM prog_uint16_t centrerad [] = {5, 213, 512, 512, 512, 256}; centrerad
PROGMEM prog_uint16_t abovecon [] = {5 690, 530, 744, 715, 512}; //above transportband
PROGMEM prog_uint16_t xabovecon [] = {5 690, 530, 744, 715, 200}; holded
PROGMEM prog_uint16_t undercam [] = {5, 175, 310, 971, 711, 200}; / / framför cam
PROGMEM prog_uint16_t pile1 [] = {5, 343, 543, 866, 729, 200}; //pile 1
PROGMEM prog_uint16_t xpile1 [] = {5, 343, 543, 866, 729, 512}; //pile 1 gripare öppen
PROGMEM prog_uint16_t pile2 [] = {5, 422, 724, 644, 599, 200}; högen 2
PROGMEM prog_uint16_t xpile2 [] = {5, 422, 724, 644, 599, 512}; högen 2 gripare öppen
PROGMEM prog_uint16_t dumpa [] = {5 353, 378, 268, 328, 200}; dump
PROGMEM prog_uint16_t xdump [] = {5 353, 378, 268, 328, 512}; dumpa gripare öppen
#endif / * ToBeAut_Robotics_h * /

Faktiska arduino program

//
ToBeAut_Robotics.cpp
//
//
Skapad av Tomas Rus på 01/06/16.
//
//
Huvudprogrammet för ArbotiX PhantomX Pincher
Klass - aut/0915
Författare: Tomas Rus, Benedikt Patricias, Christian Hejlesen
#include "ToBeEssentials.h" //hardcoded poser
#include
TOPPLUVA bibliotek
#include / /
#include //library AX12 servon
#include //library för flytta funktion och många fler
#include //small bibliotek för ledde drift, kan ersättas
BioloidController bioloid = BioloidController(1000000);
Globala variabler går här
LED13 ledgreen;
LED13 ledred;
int PshBut = 0; tryckknapp 1 pin-kod
int val = 0;
int fromPLC = 3; stift för input från PLC, om det ' ß en ruta
int readySeq = 18; PIN-kod för att skicka klar signal via relä till PLC
känna igen färgerna, färg 1 = blå, färg = 2 = grön, annat 0
int moveDelay = 1000; hastigheten på roboten i ms
int tryck;
int färg = 0;
int boxW = 0; Box väntar på transportbandet, inre lite
Ogiltiga inställningar)
{
pinMode (3, ingång);
pinMode (16, OUTPUT);
pinMode (17, OUTPUT);
pinMode (18, OUTPUT);
}
Ogiltig loop)
{
Delay(1000);
Move(homepose);
ledred.off(17);
ledgreen.on(16); signalizing klar med grön led
boxW = 0;
boxW = digitalRead(fromPLC);
Delay(1000);
om (boxW) {
ledgreen.off(16); signalizing driftstatus med röd led
ledred.on(17);
playSequence();
}
} / / Annullera loop slutet
void flytta (prog_uint16_t * Inn) //inherited från bioloid bibliotek
{
Delay(moveDelay); rekommenderade paus

bioloid.loadPose(Inn); läsa in Posen från blixt, i den nextPose buffert
bioloid.readPose(); läste i nuvarande servo positioner till curPose buffert
Delay(moveDelay);
bioloid.interpolateSetup(moveDelay); uppställning för interpolation från aktuellt -> nästa över 1/2 en sekund

samtidigt (bioloid.interpolating > 0)
{/ / gör detta medan vi inte har nått våra nya pose
bioloid.interpolateStep(); flytta servon, om det behövs.
Delay(3);
}
}
void playSequence() {
Delay(1000);
Move(abovecon);
Delay(1000);
Move(xabovecon);
/ * medan (tryck < 500) {//optional användning av tryckgivare
Tryck = analogRead(26);
Delay(200);
gripdon-= 30;
om (gripdon < 0) {
gripdon = 0;
}
ax12SetRegister2 (5, 30, gripdon);
} */
Delay(1000);
Move(undercam);
Delay(1000);
färg = getColor();
Växla (färg) {
ärende '1': //moving lådor till den första högen
Move(pile1);
Delay(1000);
Move(xpile1);
Delay(1000);
bryta;
ärende '2': //moving lådor att han andra högen
Move(pile2);
Delay(1000);
Move(xpile2);
Delay(1000);
bryta;
standard: //moving okända lådor att dumpa högen
Move(dump);
Delay(1000);
Move(xdump);
bryta;
}
Move(homepose);

}
int getColor()
{
TOPPLUVA TOPPLUVA;
pixY.init();
Delay(500);
int block;
int j;
int jag = 0;
int färg = 0;

medan (färg! = 1 || färg! = 2).
{
block = pixy.getBlocks();

om (block)
{
i ++;

göra detta (print) varje 20 ramar för att skriva ut varje
Frame skulle mosse ner Arduino
om (jag % 20 == 0)
{
Serial.println(Color);
färg = pixy.blocks[j].signature;
returnera färg;
}

}
}

}

Se Steg
Relaterade Ämnen

Internet kontrollerad house och Robot (Home Automation)

i detta instructable jag kommer att berätta hur du ansluter hela huset (alla elektriska apparater) till internet så att du kan styra din varje utrustning från var som helst i världenJag har gjort detta projekt 3 månader tillbaka och det körs kontinue...

Kurs på MIT App Inventor och Arduino

Jag har gjort många tutorials för att skapa apps använder MIT app inventor och anslutit app med arduino att få saker att fungera, jag får ofta mail anger något försvann när de följa min tutorial, här en steg för steg handledning på komma igång med at...

Introduktion till Home Automation med Arduino och RF-signaler!

Idag ska jag visa dig en introduktion på hemautomation med RF-signaler.Föreställa sig mitten av vintern, det är kallt och mörkt ute, men tack vare automation du vakna upp till ett varmt och ljust rum, med en varm kopp kaffe ångande vid sidan av sänge...

Hem Automation (eller Robot Butler kallas Geoffrey) - iPhone kontrollerade, arduino baserat

att kunna styra allt från fickan har länge varit en dröm som delas av många. Tidigare har vi universella fjärrkontroller som kan styra både vår TV och radio, då vi hade trådlös vägguttag. Både bra saker, men hur troligt är det att du kommer att bära...

Robot Arm Controll + automation

Att få kontroll över mer än en servo är lite knepigt, speciellt när du vill lagra till punkter eller platser, jag menar om du har en robotarm och du vill kontrollera det och store platser, med hjälp av det traditionella sättet att skriva pre definier...

Soccer playing Robots

Detta är mitt examensarbete. Bilder och detaljer är för mycket att skriva så jag har fäst bilder och lagt upp i betänkandet. Jag hoppas det hjälper någon :)Projektets mål var att göra en programvara baserad domänkontrollant för att göra 2 robotar spe...

DIY Solar Robotic dubbla 55 Gallon kompostorn

detta var ett Grant High School Vex robotic team projekt. Kompostorn installerades i skolans Serenity trädgård. Videon ger en introduktion till trädgården och sedan diskuterar komposten i detalj. Mer information finns på mitt blogginlägg här:http://v...

HackerBoxes 0001: Robotic Smart Car, NodeMCU, 3D LED-julgran

Detta instructable delar grunderna i arbetar med HackerBoxes #0001. HackerBoxes är den månatliga box prenumerationstjänsten för elektronik hobbyister, beslutsfattare och hackare. Om du vill få en box som denna rätt till din brevlåda varje månad, kan...

Gör en enkel Snap kretsar programmerbar Robot

i detta Instructable kommer du lära dig hur man bygger en enkel Snap kretsar programmerbar robot. Först kommer du lära dig hur man bygger en enkel krets med Snap kretsar för att förstå hur lätt det är att bygga elektroniska kretsar. Du kommer därefte...

Blinky papper Robot - 1: a papper Circuit projektet

Detta roliga lilla projekt är en snabb, billig introduktion till papper kretsar. Det använder sig även av sturdy självständigt papper människor av mitt tidigare "kompatibel (Blinky är en glad liten robot med en glad röd lampa på huvudet. Röda lampan...

Färg Sensing Robot

University of Manitoba introduktion till Robotics projekt:Jag har designat en robot med raspberry pi och Matlab som upptäcker färg och flyttar därmed.Steg 1: Delar krävs-Raspberry Pi 2 (med standard kringutrustning)-USB-webbkamera-L298 Dubbla DC Moto...

Arbotix arm sorterare med transportör

Vi är gruppen T-1000 dom dagen i klassen automation teknik i UCN Danmark. Vi var i uppdrag för att göra ett fall med en robotarm med en arbotix styrenhet och ax12a motorer. Vi var också tvungna att genomföra en TOPPLUVA kamera för extra funktionalite...

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...

Binokulär Robot huvudet en därigenom kamera

IntroduktionBerömda filmen robotar som Wall-E och Johnny fem har binokulärt seende inte bara för att det är söt och relatable, men det kan tjäna en praktisk funktion. Binokulärseende är naturens sätt att lägga till djup till vår känsla av synen. Jag...

MeArm färg Chip sorterare

I detta Instructables bygger vi en automatisk färg chip sorterare med hjälp av en meArm robotarm och en TCS3200 färgsensor. Detta är en del av min mellanliggande nivå läroplan för mitten och gymnasieelever på min robotics workshop. MeArm är ett utmär...

Robot klo för Workshops!

Detta är en ny design för en enkel robot klo som kan användas för elektronik workshops! Klo kan förstå lätta föremål som pom poms och styrofoam koppar, och är en bra introduktion till en mycket förlåtande linjärt ställdon mekanism. Detta kräver en pu...

IoT: Raspberry Pi Robot med Video Streamer och Pan/Tilt kamera fjärrkontroll över internet

(Om du gillar detta Instructable, glöm inte att rösta på den - ovan: högra hörnet flaggan. Det tävlar om SAKERNAS INTERNET och AUTOMATION tävlingar. Tack så mycket! ;-)Detta är en andra del av min föregående Intructable: IoT - kontrollera en Raspberr...

IoT - kontrollera en Raspberry Pi Robot över internet med HTML och shell skript endast

(Om du gillar detta Instructables, glöm inte att rösta på det (ovan: högra hörnet flaggan). det konkurrerar om SAKERNAS INTERNET och AUTOMATION tävlingar. Tack så mycket! ;-)I detta instructable, vi lära dig att skapa en helt kontrollerad IoT Raspber...

Gest baserat Home Automation med Intel Edison (Intel IoT))

Gest baserade hemautomation är det nya sättet att interagera med elektriska apparater tillgängliga på vårt hus. I detta projekt kommer vi att använda sensorer i stället för kamera för gestigenkänning, eftersom det ger bättre konsistens, miljö oberoen...