BREAKING NEWS

09 November 2015

Arduino Balancing Robot



By partnering with ROBOTICS 3D- BORN ROBOTICS OPEN SOURCE PLATFORM   is the new robotic platform 4WD ARDUINO UNO that interacts with your Android App via bluetooth.
The basic version allows you to experience the basics of robotics applied to a platform 4WD

The robot "base" consists of:  
  • Arduino Uno Rev3
  • Dagu 4WD Magician Chassis
  • 2A Motor Shield
  • ULTRASONIC SENSOR HC-SR04
  • 1 BUZZER
  • 1 BRACKET X SR04
  • 1 PORTABATTERIE
  • 1 BLUETOOTH MODULE
  • 10 jumper M/F
  • 1 jumper a Y 1M/2F

Thanks to sketch provided as examples, can be tested step by step the basic functionality of the 4wd, in particular you can do:
  • ENGINE TEST
  • TEST AUDIO
  • ULTRASOUND TEST
  • TEST BLUETOOH
Among the applications that you can make it is also included Theremino (included in the basic version) other being sviiluppo.
Android4WD is both the Arduino sketch is the mobile application that allows the basic version to control your TOADS.

With MIT App Inventor 2 you Customize your Android application to control your robot


?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81

*/
#include "pitches.h" 
 
 
const int signalPin = 12;
const int echoPin = 11;
const int audioPin = 13;
 
int  distance = 0;            // obstacle distance
const  int  numOfReadings = 3; // number readings
int  readings [numOfReadings]; // store readings in an array
int  arrayIndex = 0;          //
int  total = 0;               // Total
int avgDistance = 0;         // Media
int  debug = 1;
const long baud = 9600;
String pDist;
 
 
void  setup () 
{
  Serial.begin(baud);
  //
  pinMode(audioPin, OUTPUT);
  // Run a melody
  PlayMelody (); 
 
}
 
void  loop ()
{
  distance = getDistance();
 
  total = total - readings[arrayIndex]; // 
  readings[arrayIndex] = distance;      // 
  total = total + readings[arrayIndex]; // 
  ++ arrayIndex;                         // 
 
  //
  if (arrayIndex >= numOfReadings)  {
    arrayIndex = 0;
  }
 
  // Calculates the average of the distance
  avgDistance = total / numOfReadings;
  pDist = String(avgDistance);
  Serial.print("distanza:");
  Serial.println (pDist);
  
 }
 
// Function of calculation of the distance
long getDistance()
{
  unsigned long pulseTime;
  unsigned long  distance;
 
  pinMode(signalPin, OUTPUT);
  digitalWrite(signalPin, LOW);      // 
  delayMicroseconds(2);              // 2 microsecondi
  digitalWrite(signalPin, HIGH);     // send a trigger pulse
  delayMicroseconds(10);             // 10 microsecondi
  digitalWrite(signalPin, LOW);      // signal pin low waiting for echo pulse
 
  pinMode(signalPin, INPUT);
  pulseTime = pulseIn(echoPin, HIGH); // read echo pulse length in microseconds
  distance = pulseTime/58;            // distance in centimeters
 
  return distance;
}

Share this:

1 comment :

 
Back To Top
Distributed By Blogger Templates | Designed By OddThemes