ATX Home Security Robot Rover (8 / 8 stap)

Stap 8: Arduino programmering

Dit is de code van de arduino te lezen en uitvoeren van de commando's:

#define echoPin 10 / / Echo Pin
#define trigPin 11 / / Trigger Pin #include #include / / Inicializa o display geen endereco 0x27 LiquidCrystal_I2C lcd (0x27, 2, 1, 0, 4, 5, 6, 7, 3, positieve);

lange duur, afstand; lange randomPisca; type int; int IN1 = 4; int IN2 = 5; int 3 = 6; int IN4 = 7; Tekenreeks modus = "rover";

void setup {delay(650); Serial.begin(9600); LCD.begin (20, 4); pinMode (trigPin, OUTPUT); pinMode (echoPin, INPUT); pinMode (IN1, uitvoer); pinMode (IN2, uitvoer); pinMode (3, OUTPUT); pinMode (IN4, uitvoer); randomSeed(analogRead(A0)); Engage(); }

void loop {als (modus == "rover") {randomPisca = random(1000); if (randomPisca < = 12.0) {pisca();} anders als (randomPisca > = 13,0 & & randomPisca < = 20,0) {olhaDireita(); delay(500); olhaEsquerda(); delay(500);} anders olhaFrente();} als (modus == "trena") {cls() digitalWrite (trigPin, laag); delayMicroseconds(2); digitalWrite (trigPin, hoge); delayMicroseconds(10); digitalWrite (trigPin, laag); duur = pulseIn (echoPin, hoge); afstand = duur / 58.2; Serial.Print(distance); lcd.setCursor (0, 0); LCD.Print ("ATX 2.0"); lcd.setCursor (1, 1); LCD.Print(distance); lcd.setCursor (1, 2); LCD.Print("cm"); lcd.setCursor (0, 3); LCD.Print ("Modo trena"); delay(400); } Als (modus == "medo") {digitalWrite (trigPin, laag); delayMicroseconds(2); digitalWrite (trigPin, hoge); delayMicroseconds(10); digitalWrite (trigPin, LOW), duur = pulseIn (echoPin, hoge); afstand = duur / 58.2; Serial.Print(distance); Serial.Print ("cm"); Serial.println(); Als (afstand < = 20) {olhaCima(); tras();} else olhaFrente(); } Als (Serial.available() > 0) {type Serial.read(); = als (modus == "rover") {als (type == '1') {digitalWrite (trigPin, laag); delayMicroseconds(2); digitalWrite (trigPin, hoge); delayMicroseconds(10); digitalWrite (trigPin, LOW), duur = pulseIn (echoPin, hoge); afstand = duur / 58.2; Serial.Print(distance); {}} Als (type == '2') {olhaBugado(); tras();} als (type == '5') {olhaFrente(); frente();} als (type == "6") {olhaEsquerda(); esquerda();} als (type == '4') {olhaDireita(); direita();} else {}} als (type == had') {lcd.setBacklight(LOW);} als (type == 'l') {lcd.setBacklight(HIGH);} als (type == 't') {modus = "trena";} als (type == 'r') {modus = "rover";} als (type == ben ') {modus = "medo";}} } void tras() {//Tras digitalWrite (IN1, laag); digitalWrite (IN2, hoge); digitalWrite (3, hoge); digitalWrite (IN4, laag); delay(200) digitalWrite (IN1, hoge); digitalWrite (IN2, hoge); digitalWrite (3, hoge); digitalWrite (IN4, hoge); delay(10);} void frente() {//Frente digitalWrite (IN1, hoge); digitalWrite (IN2, laag); digitalWrite (3, laag); digitalWrite (IN4, hoge); delay(200) digitalWrite (IN1, hoge); digitalWrite (IN2, hoge); digitalWrite (3, hoge); digitalWrite (IN4, hoge); delay(10);} direita() {//Direita digitalWrite (IN1 void HOGE); digitalWrite (IN2, laag); digitalWrite (3, hoge); digitalWrite (IN4, laag); delay(200); digitalWrite (IN1, hoge); digitalWrite (IN2, hoge); digitalWrite (3, hoge); digitalWrite (IN4, hoge); delay(10); } void esquerda() {//Esquerda digitalWrite (IN1, laag); digitalWrite (IN2, hoge); digitalWrite (3, laag); digitalWrite (IN4, hoge); delay(200); digitalWrite (IN1, hoge); digitalWrite (IN2, hoge); digitalWrite (3, hoge); digitalWrite (IN4, hoge); delay(10);} ongeldig engage() {lcd.setBacklight(HIGH); lcd.print("*---*"); lcd.setCursor (0, 0) en lcd.setCursor (0, 1); lcd.print("| ATX 2.0 | "); lcd.setCursor (0, 2); LCD.Print("| (ALS Robots) | "); lcd.setCursor (0, 3); LCD.Print("*---*"); delay(3000); lcd.setCursor (0, 0); LCD.Print ("---"); lcd.setCursor (0, 1); LCD.Print ("ATX 2.0"); lcd.setCursor (0, 2); LCD.Print ("(ALS Robots)"); lcd.setCursor (0, 3); LCD.Print ("---"); delay(100); lcd.setCursor (0, 0); LCD.Print ("---"); lcd.setCursor (0, 1); LCD.Print ("ATX 2.0"); lcd.setCursor (0, 2); LCD.Print ("(ALS Robots)"); lcd.setCursor (0, 3); LCD.Print ("---"); delay(100); lcd.setCursor (0, 0); LCD.Print ("---"); lcd.setCursor (0, 1); LCD.Print ("ATX 2.0"); lcd.setCursor (0, 2); LCD.Print ("(ALS Robots)"); lcd.setCursor (0, 3); LCD.Print ("---"); delay(100); lcd.setCursor (0, 0); LCD.Print ("---"); lcd.setCursor (0, 1); LCD.Print ("ATX 2.0"); lcd.setCursor (0, 2); LCD.Print ("(ALS Robots)"); lcd.setCursor (0, 3); LCD.Print ("---"); delay(100); lcd.setCursor (0, 0); LCD.Print ("---"); lcd.setCursor (0, 1); LCD.Print ("ATX 2.0"); lcd.setCursor (0, 2); LCD.Print ("ALS Robots"); lcd.setCursor (0, 3); LCD.Print ("---"); delay(100); lcd.setCursor (0, 0); LCD.Print ("---"); lcd.setCursor (0, 1); LCD.Print ("ATX 2.0"); lcd.setCursor (0, 2); LCD.Print ("LS Robot"); lcd.setCursor (0, 3); LCD.Print ("---"); delay(100); lcd.setCursor (0, 0); LCD.Print ("---"); lcd.setCursor (0, 1); LCD.Print ("TX 2.0"); lcd.setCursor (0, 2); LCD.Print ("S Robo"); lcd.setCursor (0, 3); LCD.Print ("---"); delay(100); lcd.setCursor (0, 0); LCD.Print ("---"); lcd.setCursor (0, 1); LCD.Print ("X 2. "); lcd.setCursor (0, 2); LCD.Print ("Rob"); lcd.setCursor (0, 3); LCD.Print ("---"); delay(100); lcd.setCursor (0, 0); LCD.Print ("--"); lcd.setCursor (0, 1); LCD.Print ("2"); lcd.setCursor (0, 2); LCD.Print ("Ro"); lcd.setCursor (0, 3); LCD.Print ("--"); delay(100); lcd.setCursor (0, 0); LCD.Print(""); lcd.setCursor (0, 1); LCD.Print(""); lcd.setCursor (0, 2); LCD.Print(""); lcd.setCursor (0, 3); LCD.Print(""); delay(200); lcd.setCursor (0, 0); LCD.Print ("___ ___"); lcd.setCursor (0, 1); LCD.Print("||||"); lcd.setCursor (0, 2); LCD.Print("| O| | O| "); lcd.setCursor (0, 3); LCD.Print ("------"); delay(700); lcd.setCursor (0, 0); LCD.Print ("___ ___"); lcd.setCursor (0, 1); LCD.Print("||||"); lcd.setCursor (0, 2); LCD.Print("| O | | O | "); lcd.setCursor (0, 3); LCD.Print ("------"); delay(700); lcd.setCursor (0, 0); LCD.Print ("___ ___"); lcd.setCursor (0, 1); LCD.Print("| O | | O | "); lcd.setCursor (0, 2); LCD.Print("||||"); lcd.setCursor (0, 3); LCD.Print ("------"); delay(700); lcd.setCursor (0, 0); LCD.Print ("___ ___"); lcd.setCursor (0, 1); LCD.Print("| O| | O| "); lcd.setCursor (0, 2); LCD.Print("||||"); lcd.setCursor (0, 3); LCD.Print ("------"); delay(700); pisca(); } pisca() {delay(100) lcd.setCursor (0, 0); lcd.print ("___ ___"); void lcd.setCursor (0, 1); LCD.Print ("|___| |___|"); lcd.setCursor (0, 2); LCD.Print("| O | | O | "); lcd.setCursor (0, 3); LCD.Print ("------"); delay(100); lcd.setCursor (0, 0); LCD.Print ("___ ___"); lcd.setCursor (0, 1); LCD.Print("||||"); lcd.setCursor (0, 2); LCD.Print ("|___| |___|"); lcd.setCursor (0, 3); LCD.Print ("------"); delay(100); lcd.setCursor (0, 0); LCD.Print ("___ ___"); lcd.setCursor (0, 1); LCD.Print ("|___| |___|"); lcd.setCursor (0, 2); LCD.Print("| O | | O | "); lcd.setCursor (0, 3); LCD.Print ("------"); delay(100); lcd.setCursor (0, 0); LCD.Print ("___ ___"); lcd.setCursor (0, 1); LCD.Print("||||"); lcd.setCursor (0, 2); LCD.Print("| O | | O | "); lcd.setCursor (0, 3); LCD.Print ("------"); delay(1000); } olhaDireita() {lcd.setCursor (0, 0); lcd.print ("___ ___"); void lcd.setCursor (0, 1); LCD.Print("||||"); lcd.setCursor (0, 2); LCD.Print("| O| | O| "); lcd.setCursor (0, 3); LCD.Print ("------");} VOID olhaEsquerda() {lcd.setCursor (0, 0); lcd.print ("___ ___"); lcd.setCursor (0, 1); LCD.Print("||||"); lcd.setCursor (0, 2); LCD.Print("| O | | O | "); lcd.setCursor (0, 3); LCD.Print ("------");} VOID olhaFrente() {lcd.setCursor (0, 0); lcd.print ("___ ___"); lcd.setCursor (0, 1); LCD.Print("||||"); lcd.setCursor (0, 2); LCD.Print("| O | | O | "); lcd.setCursor (0, 3); LCD.Print ("------");} VOID olhaBugado() {lcd.setCursor (0, 0); lcd.print ("___ ___"); lcd.setCursor (0, 1); LCD.Print("||| O| "); lcd.setCursor (0, 2); LCD.Print("| O | | | "); lcd.setCursor (0, 3); LCD.Print ("------");} VOID olhaVesgo() {lcd.setCursor (0, 0); lcd.print ("___ ___"); lcd.setCursor (0, 1); LCD.Print("||||"); lcd.setCursor (0, 2); LCD.Print("| O| | O | "); lcd.setCursor (0, 3); LCD.Print ("------");} VOID olhaCima() {lcd.setCursor (0, 0); lcd.print ("___ ___"); lcd.setCursor (0, 1); LCD.Print("| O | | O | "); lcd.setCursor (0, 2); LCD.Print("||||"); lcd.setCursor (0, 3); LCD.Print ("------");} VOID cls() {lcd.setCursor (0, 0); lcd.print(""); lcd.setCursor (0, 1); LCD.Print(""); lcd.setCursor (0, 2); LCD.Print(""); lcd.setCursor (0, 3); LCD.Print("");}

Gerelateerde Artikelen

Internet Enabled DSC Home Security System

Internet Enabled DSC Home Security System

Wijzigen van een bestaand DSC Home Security systeem om het internet ingeschakeld en zelf gecontroleerd worden.Dit instructable wordt ervan uitgegaan dat u een werkende Raspberry Pi hebt.Let op: deze uitvoering heeft de volgende tekortkomingen:Als een
Arduino Omni wiel Robot Rover - MAKE cursus

Arduino Omni wiel Robot Rover - MAKE cursus

Dit Instructable ontstond vervulling de project-eis van de Makecourse bij de Universiteit van Zuid-Florida (www.makecourse.com)Als robot rovers? Bent u een DIY goeroe? Ik ben Larsha Johnson een student Elektrotechniek aan de Universiteit van Zuid-Flo
DIY Bluetooth Controlled Robot (Rover) met Live Stream Video!!

DIY Bluetooth Controlled Robot (Rover) met Live Stream Video!!

WAARSCHUWING: DIT INSTRUCTABLE BEVAT EEN SUPER AWESOME INHOUD ZO BEWUST WORDEN.Heb je ooit wilde maken super awesome robot of rover gecontroleerd draadloos met uw mobiele apparaat?!Heb je ooit wilde iets kijken te maken als mars rover of iets?!Heb je
ARDUINO draadloze HOME SECURITY SYSTEM

ARDUINO draadloze HOME SECURITY SYSTEM

In dit project zal ik bespreken hoe kun je een goedkope draadloze home security system. Hoewel tijdens het starten van dit project het hoofddoel was alleen voor beveiliging alarm, maar later vond ik dat dit apparaat kan worden gebruikt voor het oplos
Gratis Home Security systeem (geen codering vereist!)

Gratis Home Security systeem (geen codering vereist!)

Een verhaaltje over de vraag waarom dit systeem was zocht voordat ik begin de werkelijke instructable. Voel je vrij om naar de TLDR versie hieronder als u niet geïnteresseerd bent.Ongeveer een jaar en een half geleden waren mijn vrouw en ik wonen in
DIY Home Security en automatisering met Raspberry Pi 2

DIY Home Security en automatisering met Raspberry Pi 2

In dit instructable zal ik mijn methoden voor het maken van een volledig aangepaste Home Security en automatiseringssysteem detail.Dit is een work in progress, en als ik het aan het als toevoegen zal ik ga.Voor nu zal ik een uitsplitsing van de doele
Arduino Home Security Alarm

Arduino Home Security Alarm

In principe wat het doet:Deze Home Security Alarm is leuk beginner project dat ik deed en het annuleerteken speurder iets als er een nabijgelegen object met behulp van het bereik van de ultrasone sensor. Als het detecteert iets gegeven op een bepaald
Home Sentry Robot Project voor de Intel-IoT-Roadshow in Austin, TX door de RoboDorks

Home Sentry Robot Project voor de Intel-IoT-Roadshow in Austin, TX door de RoboDorks

Aangezien ik was gonna be op het gebied van Austin, TX voor mijn dochter's verjaardag, werd ik uitgenodigd om join mijn vrienden voor de Intel-IoT Roadshow en de Hack-a-thon, met de Intel Edison ontwikkeling Kit. De criteria van de wedstrijd was een
Home Built DIY Home Security alarmsysteem

Home Built DIY Home Security alarmsysteem

A Complete Home Security systeem ontwikkeld volgens de vereisten van elke klanten dit alarm is gebouwd vanaf nul, terwijl het verkrijgen van circuits van het internet die vervolgens werden onderworpen aan verscheidene wijzigingen en prototype testen.
Robotic Rover

Robotic Rover

Deze tutorial zal je leren hoe te bouwen uw eigen robotic rover. Ik ben met behulp van een 1/10 schaal elektrische auto, een Monstertruck zijn specifieke, maar elk type auto zal doen (hoewel, sommige zijn beter dan anderen handelbaar). Ons doel zal z
Hond Bot: Lego Robot Rover met Webcam

Hond Bot: Lego Robot Rover met Webcam

Hier is hoe te maken van een Lego robot u vanuit een willekeurig scherm via wifi kunt. Het heeft ook een webcam, zodat u kunt zien waar uw lopende en LED verlichting voor ogen! Dit is een groot project te doen met uw kinderen als ze het logo gebouw d
Home Security System met behulp van Sms op controle Home toestel

Home Security System met behulp van Sms op controle Home toestel

Deze video is over Home Automation systeem heeft een beveiligingsfunctie. Deze beveiligingsfunctie is uing uw mobiele telefoon om sms te verzenden naar het systeem te in- of uitschakelen uw home appliance zetten of update op temperatuur in uw kamer k
Externe $10 Home Security Hack

Externe $10 Home Security Hack

omzetten in een gewone goedkope webcam een verborgen huisveiligheid systeem zichtbaar overal ter wereld vanaf uw mobiele telefoon! Ik echt hoop dat je dit en wil je een beter gevoel van het project kunt u mijn video!Stap 1: De dingen die je zal nodig
DIY autonome Line Tracking met obstakel te vermijden Robot (Rover)

DIY autonome Line Tracking met obstakel te vermijden Robot (Rover)

WAARSCHUWING: MAAK UW COMPUTER HELDERHEID LAAG, OMDAT DIT PROJECT STRAALT EEN HOOG NIVEAU VAN AWESOMENESS DIE SCHADELIJK KAN ZIJN VOOR JE OGEN :D 3:)Dit project deelgenomen aan RoboCup 2015 Egypte lokale competitie en won "Best Design Award" met