Here is my new dev : SmartBot Mini : A mini robot for Smartphone.
Smartphone are now equipped with a full list of high tech sensors (GPS, 3 axis accelerometer, gyro, compass, camera, microphone). It brings also sound production, vibration and a large tactile screen.
By adding at least a pair of wheels, it turns your smartphone into a powerful robot.
SmartBot mini is a very small robot with a smartphone brain. It is equipped with 2 caterpillar tracks, 2 DC gear motors, an homemade analog PCB which is a dual motor driver with full speed control controlled by smartphone and it is powered by 2*AAA batteries. I want to thank my friend Florian for his help on the controller.
This new PCB allows the robot to be controlled by the smartphone. It doesn’t use the Windows Phone serial  port cable that I have designed earlier and it works with no micro-controller. The PCB is equipped with some additionnal outputs which give the ability to control some additionnal actuators with the smartphone.
The robot works with Smartphone under Windows Phone and Android for now and I will add IOS and Blackberry OS compatibility later.
It is design to accept even the biggest Windows Phone available like the HTC HD7 or the HTC TITAN.

Voilà mon nouveau dev : SmartBot Mini : un mini robot pour Smartphone.
Les smartphones sont maintenant équipés avec une liste complète de capteurs high tech (GPS, accéléromètre 3 axes, gyroscope, boussole, camera, microphone). Ils apportent également la capacité à produire du son, des vibrations et un large écran tactile. En ajoutant une paire de roue, cela transforme le smartphone en une puissante plateforme robotique.
Smartphone mini est un très petit robot avec un smartphone pour cerveau. Il est équipé de deux chenilles, 2 moto-réducteurs DC, une carte analogique faite maison qui est un driver double canal pour moteur DC avec contrôle total de la vitesse contrôlé par smartphone. Le tout est alimenté par 2 piles AAA. Merci à mon pote Florian pour son aide sur le contrôleur.
Ce contrôleur permet au robot d’être piloté par le smartphone. Il n’utilise pas le câble série pour Windows Phone que j’ai conçu précédemment et fonctionne sans micro-contrôleur. Il est également équipé de sorties supplémentaires permettant au smartphone de contrôler des actionnaires additionnels.
Le robot marche avec des smartphones sous Windows Phone et Android pour l’instant et j’ajouterai la compatibilité avec IOS et Blackberry OS plus tard.
Le robot est conçu pour accepter même les plus gros Windows Phone disponibles comme le HTC HD7 ou le HTC TITAN.






The SDK allows to control the robot with 7 different kind of actions :
Le SDK permet de contrôler le robot avec 7 différents type d’actions :

 public void GoForward(byte Speed) //Go forward with speed control
 public void GoBackward(byte Speed) //Go backward with speed control
 public void GoLeft(byte Speed) //Go Left with speed control
 public void GoRight(byte Speed) //Go Right with speed control
 public void Stop() //Stop
 public void Sing(byte message) //Sing with a list of short singing message
 public void ChangeSpeed(Byte Speed) //Change the speed value during a motion

I will add a video of the SmartBot mini during the week.
J’ajouterai une vidéo du SmartBot mini au cours de la semaine.


With the new Windows Phone Mango OS, WP developpers have now access to the Windows Phone camera API. It allows a ton of new robot control strategies like :
- Face tracking
- Object tracking
- Face recognition
- Light tracking
- OCR
- Tag reading (data matrix, bar code, …)
- Edge detection for maze resolver
- Line follower
and it allows to create strong interacting robot.

Avec le nouvel OS Windows Phone Mango, les développeurs WP ont maintenant accès à l’API de la camera. Cela permet une tonne de nouvelles stratégies de contrôle du robot comme :
– Suivi de tête
– Suivi d’objet
– Reconnaissance faciale
– Suivi de lumière
– Reconnaissance de caractères
– Lecture de tag (data matrix, code barre, …)
– Détection de contours pour solveur de labyrinthe
– Suiveur de ligne
et cela permet la création de robot vraiment interactif.

I have started a Windows Phone Image Processing library. Here is the list of available image processing methods that I have already implemented inside :
J’ai commencé une librairie de traitement d’images pour Windows Phone. Voilà une liste des méthodes disponibles que j’ai déjà implémenté à l’intérieur :

 public int[] ConvertYtoColor(byte[] YData) //Convert Y data from YCbCr to ARGB int info in order to display it
 public byte[] Thresholding(byte[] YData, int threshVal)
 public byte[] Negative(byte[] YData)
 public byte[] Erode(byte[] YData, int PicWidth, int PicHeight) //morphological operation
 public byte[] Dilate(byte[] YData, int PicWidth, int PicHeight) //morphological operation
 public byte[] FiltreConvolution(byte[] YData, int PicWidth, int PicHeight) //Convolution filter (Kernel) like Laplace, Gauss or gradient filter.
 public int[] Histogram(byte[] YData)
 public byte[,] Convert1DTo2D(byte[] YData, int PicWidth, int PicHeight)
 public int[] DrawCross(int[] Data, int posX, int PosY, int crossSize, int PicWidth, int PicHeight) //Adding a cross overlay to localize blob in the picture
 public List<WPBotsImProcSegInfo> Segmentation1(byte[] YData, int PicWidth, int PicHeight) //Blob detection
 public List<WPBotsImProcSegInfo> Segmentation2(byte[] YData, int PicWidth, int PicHeight) //Blob detection
 public void ConvertYCbCrToComprehensiveYCbCr(YCbCrPixelLayout layout, byte[] currentPreviewBuffer, int PicWidth, int PicHeight, out byte[] YMatrix, out byte[] CrMatrix, out byte[] CbMatrix)
 public int YCbCrToArgb(byte y, int cb, int cr) //YCbCr to ARGB color domain
 public Point HeadTracking(byte[] YData, int PicWidth, int PicHeight)
 public Point RedBalloonTracking(byte[] YData, int PicWidth, int PicHeight)

Here is an small example of an live object tracking application. The goal : localize the red balloon and rotate in order to be always in front of it.
Voilà un petit exemple d’une application de tracking live d’objet. L’objectif : localiser le ballon rouge et pivoter de façon à se retrouver toujours en face de lui.

 

3 Responses to SmartBot Mini : The mini robot for Smartphone

  1. HD7 dit :

    Please give us more detailed instructions how to build this awesome WPbot

  2. Kanadaj dit :

    Amazing work dude, keep it rollin’! If you work on it some more we’ll have a serious bot out there based on the phones which is not made by any of the greater companies ;)

  3. sam dit :

    well done looking forward to see it live in demo keep up the good work