Projet Bras robotique : Partie 4

Estimated read time 2 min read

Programmation de la partie Manette

La partie manette est constituée d’une carte arduino UNO, un module Bluetooth HC06, un afficheur LCD 20×4 avec un module I2C, un joystick et un potentiomètre. Le programme arduino dans l’annexe 1 de ce rapport. Le schéma du montage réalisé sur fritzing est le suivant :

Montage électronique de la partie manette
/*
* FST BENI MELLAL
* Cycle ingénieur filière génie électrique, 
*    option : électrotechnique et électronique industrielle
* code réalisé par : MALKI MOHAMED-YASSINE
* PROJET : conception et réalisation d'un bras robotisé
*
* == CODE manette==
*/
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <Servo.h>
LiquidCrystal_I2C lcd(0x27, 20, 4);
#define button 3
int state = 0;
int Val1, Val2, Val3, Val4;
int a = 0;
void setup() {
 Serial.setTimeout(10000);
 pinMode(button, OUTPUT);
 pinMode(4, OUTPUT);
 Serial.begin(38400); // Default communication rate of the Bluetooth module
 lcd.init(); // initialisater lcd
 lcd.backlight();
 lcd.setCursor(2, 0);
 lcd.print("FST BENI-MELLAL");
lcd.print("FST BENI-MELLAL");
 lcd.setCursor(1, 1); lcd.print("FILIERE INGENIEUR");
 lcd.setCursor(4, 2); lcd.print("MINI PROJET");
lcd.setCursor(3, 3); lcd.print("BRAS ROBOTIQUE");
 delay(4000); lcd.clear();
 lcd.setCursor(2, 0);
lcd.print("REALISE PAR:");
 lcd.setCursor(3, 1);
 lcd.print("MALKI MOHAMED YASSIN");
 delay(5000); lcd.clear();
}
void loop() {
 int conf = Serial.parseInt();
 if (conf == 1) {
 lcd.setCursor(0, 0);
 lcd.print("commande par joystck");
 lcd.setCursor(5, 1);
 lcd.print("activee");
 state = digitalRead(button); // lire l'etat du boutton poussoir
 if ( state == HIGH) {
 a = 1;
 } else {
 a = 0;
 }
Val4 = 0;
 Val1 = analogRead(A0);
 Val1 = map(Val1, 0, 1023, 0, 180);
 Val2 = analogRead(A1);
 Val2 = map(Val2, 0, 1023, 0, 180);
 Val3 = analogRead(A2);
 Val3 = map(Val3, 0, 1023, 0, 180);
 Serial.print("a");
 Serial.print(a);
 Serial.print("bbbb");
 Serial.print(Val1);
 Serial.print("c");
 Serial.print(Val2);
 Serial.print("d");
 Serial.print(Val3);
 Serial.print("eeee");
 Serial.print(Val4);
 Serial.println("g;");
 delay(10);
 }
 else {
 lcd.clear();
 lcd.setCursor(1, 0);
 lcd.print("cycle automatique"); delay(1000);
 lcd.setCursor(3, 1);
 lcd.print("debut du cycle");
conf = Serial.parseInt();
 if (conf == 2) {
 lcd.setCursor(3, 1);
 lcd.print("objet attrape");
 }delay(1000);
 }

You May Also Like

More From Author

+ There are no comments

Add yours