From robot

Programmer MRduino Wireless en Wifi

Le robot MRduino Wireless a la possibilité de transférer le programme du PC vers le robot en communication Wifi.

Le programme

Ce programme permet d’activer le téléversements OTA (Over The Air) sur l’ESP8266 du robot.

  1. Ouvrer l’Arduino IDE et insérer ce programme :

En modifiant :

  • VOTRE_SSID : le nom de votre réseau sans fil.
  • VOTRE_MOT_DE_PASSE : le mot de votre réseau sans fil.
#include <mrduino.h>
#include <ESP8266WiFi.h>
#include <WiFiUdp.h>
#include <ArduinoOTA.h>

const char* ssid = "VOTRE_SSID"; 
const char* password = "VOTRE_MOT_DE_PASSE"; 

void setup() 
{
   // initialisation du wifi
   WiFi.begin(ssid, password);

   // connexion wifi
   while (WiFi.waitForConnectResult() != WL_CONNECTED)
   {
     delay(1500);
     ESP.restart();
   }

  ArduinoOTA.setHostname("Robot_MRduinoW"); 
  
  // initialisation de l'Over The Air
  ArduinoOTA.begin(); 

}

void loop()
{
  ArduinoOTA.handle();
}

Après avoir vérifié ce programme Arduino, vous pouvez le téléverser vers le robot via un câble micro-USB.

img2

Transfére en Wifi

Maintenant que vous avez programmer le robot, vous pouvez fermer le logiciel Arduino IDE et le redémarrez afin d’avoir une nouvelle option de programmation.

  • Ouvrez l’onglet Tools->Port :

img1

  • Sélectionner le port : monMRduinoW

Vous pouvez débrancher le câble série de type micro-USB entre votre robot et  le PC; et téléverser à nouveau le programme. Cette fois-ci, le téléversement  fonctionne en Wifi.

Fin du tuto !

 

 

 

 

 

 

MRPi1 robot navigation “cleaning algorithm”

Le programme :

from mrpi1_lib import *
import time

obs_limit = 600


# main program
state = 1

while 1:
 x1 = proxSensor(3)
 x2 = proxSensor(4)

 if(( x1 > obs_limit)and( x2 > obs_limit)and(state == 1)):
   x1 = 0
   x2 = 0
   stop()
   time.sleep(1)
   state = 2
   controlEnable()
   turnRight_degree(10,90)
   forward_mm(10, 100)
   turnRight_degree(10,90)
 if(( x1 > obs_limit)and( x2 > obs_limit)and(state == 2)):
   x1 = 0
   x2 = 0
   stop()
   time.sleep(1)
   state = 2
   controlEnable()
   turnLeft_degree(10,90)
   forward_mm(10, 100)
   turnLeft_degree(10,90)
   state = 1
 else:
  forward(20)

Mise à jour du robot MRPi1

Une mise à jour pour le robot MRPi1 est disponible sur GitHub :

https://github.com/macerobotics/MRPi1

  • Pour mettre à jour le Firmware (version : 0.92) du robot MRPi1 :

Mise à jour firmware du microcontrôleur

  • Ensuite, mise à jour de la librairie Python  :

Puis transférer ces fichiers sur le robot avec FileZilla, puis installation  la librairie :

>> cd /home/pi/Desktop/MR_Projects/
>> sudo python setup.py install

Les nouvelles fonctions disponibles :

  • Lecture de la position du robot :
    • robotPositionX()
    • robotPositionY()

Retourne une valeur en millimètre.

De plus, le déplacement du robot à été améliorer avec les fonctions : forward(), back(), turnLeft(), turnRight().

Pour vérifier la version du  firmware avec Python :

>> firmwareVersion()
0.92