Kit Robot Senile + Arduino UNO + Driver de Motoare + Bluetooth
Acest kit contine tot ceea ce aveti nevoie pentru a crea un robot pe senile controlat prin telefonul mobil sau prin laptop. Aveti inclusa cutia de viteze Tamiya, un set de senile de cauciuc, un sasiu cu suruburi Universal Plate (pentru partea mecanica), precum si o placa de dezvoltare Arduino UNO R3, un driver de motoare bazat pe L298N pentru controlul motoarelor si un conector Bluetooth Mate care face posibil controlul robotului folosind un telefon mobil sau un laptop.
In plus, kit-ul mai contine 4 fire de conectare tata-tata pentru conectarea modulului Bluetooth cu Arduino.
Controlul prin telefon mobil se poate face folosind un telefon mobil care ruleaza sistemul de operare Android, pe care se instaleaza aplicatia Amarino.
Pentru alimentarea robotului, va recomandam o cutie de baterii si un cablu de conectare pentru aceasta (nu sunt incluse in acest kit) sau daca doriti, acumulatori LI-PO la alegerea dvs (ideal 7.4 V).

Cateva exemple video mai jos, pentru a exemplifica principiul.
Un exemplu de cod sursa mai jos.
#include <MeetAndroid.h>
int MOTOR1_PIN1 = 3;
int MOTOR1_PIN2 = 5;
int MOTOR2_PIN1 = 6;
int MOTOR2_PIN2 = 9;
MeetAndroid meetAndroid;
void setup() {
Serial.begin(9600);
meetAndroid.registerFunction(orientation, 'A');
pinMode(MOTOR1_PIN1, OUTPUT);
pinMode(MOTOR1_PIN2, OUTPUT);
pinMode(MOTOR2_PIN1, OUTPUT);
pinMode(MOTOR2_PIN2, OUTPUT);
}
boolean printed = false;
void loop() {
meetAndroid.receive();
}
void orientation(byte flag, byte valueCount) {
boolean speedSet = false;
float data[valueCount];
meetAndroid.getFloatValues(data);
int forward = (int) data[1];
int side = (int) data[2];
int speedLeft = 0;
int speedRight = 0;
if (abs(side) > 25) {
speedLeft = -(75 + (abs(side)));
speedRight = ((75 + (abs(side))));
if (side <0) {
speedLeft = - speedLeft;
speedRight = - speedRight;
}
speedSet = true;
}
if (!speedSet) {
if ((forward > -130) && (forward < -60)) {
speedLeft = 0;
speedRight = 0;
}
if (forward > -60) {
speedLeft = 75 + 2 * (90 -abs(forward));
speedRight = 75 + 2 * (90 -abs(forward));
}
if (forward < -130 ) {
speedLeft = -(int)(-2.83333333 * forward - 255);
speedRight = -(int)(-2.83333333 * forward - 255);
}
}
if (speedLeft > 255) {
speedLeft = 255;
}
if (speedRight > 255) {
speedRight = 255;
}
if (speedLeft < -255) {
speedLeft = -255;
}
if (speedRight < -255) {
speedRight = -255;
}
go(speedLeft, speedRight);
}
void go(int speedLeft, int speedRight) {
if (speedLeft > 0) {
analogWrite(MOTOR1_PIN1, speedLeft);
analogWrite(MOTOR1_PIN2, 0);
}
else {
analogWrite(MOTOR1_PIN1, 0);
analogWrite(MOTOR1_PIN2, -speedLeft);
}
if (speedRight > 0) {
analogWrite(MOTOR2_PIN1, speedRight);
analogWrite(MOTOR2_PIN2, 0);
}
else {
analogWrite(MOTOR2_PIN1, 0);
analogWrite(MOTOR2_PIN2, -speedRight);
}
}
Review-ul dumneavoastră: Notă: HTML nu este interpretat!
Rating: Rău Bun
Introduceţi codul în căsuţa de mai jos:

Categorii
Informaţii
Cele mai noi





























































-38x38.jpg)


CONTACT
Coşul Tău
