En voulant tester plusieurs distributions avec le raspberry j'ai souvent été confronté au même problème.
En pluggant ma carte sd pour la formater sous Windows la partition détectée est inférieur à la taille de la carte.
Avant je n'avais trouvé comme solution que de booter sous une distro linux pour utiliser GParted.
Voici la solution sous Windows : HDD LLF Low Level Format Tool
http://hddguru.com/software/HDD-LLF-Low-Level-Format-Tool/
Attention tout de même au choix de la partition avant de lancer le tool ;-)
Précisons qu’après avoir effectué la manipulation il faut enlever et remettre votre carte SD ;-)
Vinch's Blog
Tips and tricks with Powershell, Rasbperry, Arduino and others stuffs
jeudi 4 juin 2015
mardi 2 juin 2015
Control servo motor with Powershell GUI
Cet article à pour but d'expliquer comment réaliser un GUI via Powershell dans le but de passer des commandes à L'arduino.
Pour réaliser le GUI je me sers du programme Powershell Studio de Sapien ( https://www.sapien.com/software/powershell_studio ).
Ce software permet de réaliser facilement une interface graphique en faisant du drag and drop d’élément.
La code derrière est entièrement en Powershell. La force de ce logiciel c'est qu'une fois le code testé on peut exporter en .exe.
Ce programme devient alors exécutable avec comme seul prérequis d'avoir Powershell d'installé.
Voici à quoi ressemble l'interface :
Et la démo en vidéo :
Au niveau des branchement,
- le servo est branché sur l'entée 2.
- Une LED s'allume lorsque le servo tourne, elle est branché sur la pin 8
Voici pour le code de l'Arduino :
#includeEt voici la partie de Powershell Studio :Servo monServo; int led = 8; void setup() { pinMode(led, OUTPUT); // Set pin 13 as digital out // Start up serial connection Serial.begin(9600); // baud rate Serial.flush(); gostop(); } void gostop() { monServo.detach(); } void loop() { // put your main code here, to run repeatedly: String input = ""; // Read any serial input while (Serial.available() > 0) { input += (char) Serial.read(); // Read in one char at a time delay(5); // Delay for 5 ms so the next char has time to be received } if (input == "left") { digitalWrite(led, HIGH); // on Serial.println("on"); monServo.attach(2); monServo.write(180); delay(50); gostop(); digitalWrite(led, LOW); // off } else if (input == "right") { digitalWrite(led, HIGH); // on Serial.println("on"); monServo.attach(2); monServo.write(-180); delay(50); gostop(); digitalWrite(led, LOW); // off } else if (input == "fullright") { digitalWrite(led, HIGH); // on Serial.println("on"); monServo.attach(2); monServo.write(-180); digitalWrite(led, LOW); // off } else if (input == "fullleft") { digitalWrite(led, HIGH); // on Serial.println("on"); monServo.attach(2); monServo.write(180); digitalWrite(led, LOW); // off } else if (input == "stop") { digitalWrite(led, HIGH); // on gostop(); digitalWrite(led, LOW); // off } }
function OnApplicationLoad { return $true #return true for success or false for failure } function OnApplicationExit { $script:ExitCode = 0 #Set the exit code for the Packager } $form1_Load={ #TODO: Initialize Form Controls here $port= new-Object System.IO.Ports.SerialPort COM3,9600,None,8,one } $buttonLEFT_Click={ #TODO: Place custom script here $port.open() $port.Write("left") $port.close() } $buttonRIGHT_Click={ #TODO: Place custom script here $port.open() $port.Write("right") $port.close() } $buttonFULLLEFT_Click={ #TODO: Place custom script here $port.open() $port.Write("fullright") $port.close() } $buttonSTOP_Click={ #TODO: Place custom script here $port.open() $port.Write("stop") $port.close() } $buttonFULLRIGHT_Click={ #TODO: Place custom script here $port.open() $port.Write("fullright") $port.close() }
lundi 3 mars 2014
Commander des produits via Farnell.be
Ce post à pour but de vous expliquer comment commander des pièces via Farnell.Be
Lorsque que l'on souhaite de commander en tant que particulier il nous est indiquer que nos commandes doivent s'effectuer uniquement par téléphone. ( cfr ce document : https://docs.google.com/file/d/0B5I6rHbbPyamaEtIYkhVQnhteGc/edit?usp=sharing )
et avec un minimum de 50€ HTVA.
Apres avoir prit contact avec le support téléphonique il s'avère que les particuliers peuvent commander via le site internet.
Pour ça, voici les informations qu'il faut indiquer pour avancer dans son étape de commande :
et comme numéro de TVA : 0
Ensuite indiquer une adresse de livraison et la commande passe en status : Reçue
Pour le payement vous allez recevoir un mail de
Vous répondez à ce mail avec la preuve de payement de votre versement et c'est parti :-)
dimanche 18 août 2013
Control two servos with Arduino
Voici la premiere étape de la construction de mon robot ( Jhonny 1.0 :p)
Le but est de controler deux servos via l'arduino alimenté sur batterie. Le robot effectue une séquence programmée : Avancer 3sec, tourner à droite, ....
Résultat :
La prochaine étape sera de connecter le raspberry avec l'Arduino et de le commander via une interface WEB :-)
Montage :
Code :
// Control 2 servo on Battery // The servo go forward for 3 sec and after turn right #includeServo leftservo; Servo rightservo; const int rightservopin = 8; const int leftservopin = 7; int speed = 10; void setup() { pinMode(leftservopin,OUTPUT); pinMode(rightservopin,OUTPUT); gostop(); Serial.begin(19200); Serial.println("Ready"); Serial.println("Play Beep"); pinMode(10, OUTPUT); beep(50); delay(100); beep(50); delay(100); beep(50); delay(4000); } void gostop() { leftservo.detach(); rightservo.detach(); } void beep(unsigned char delayms){ analogWrite(10, 20); // Almost any value can be used except 0 and 255 // experiment to get the best tone delay(delayms); // wait for a delayms ms analogWrite(10, 0); // 0 turns it off delay(delayms); // wait for a delayms ms } void loop() { beep(200); // Avancer pendant 3 sec leftservo.attach(leftservopin); rightservo.attach(rightservopin); rightservo.write(90 - speed); leftservo.write(90 + speed ); delay(3000); // Tour de 90degre a droite rightservo.write(90 + speed); leftservo.write(90 + speed ); delay(750); // Avancer pendant 3 sec rightservo.write(90 - speed); leftservo.write(90 + speed ); delay(3000); // Tour de 90degre a droite rightservo.write(90 + speed); leftservo.write(90 + speed ); delay(750); // Avancer pendant 3 sec rightservo.write(90 - speed); leftservo.write(90 + speed ); delay(3000); // Tour de 90degre a droite rightservo.write(90 + speed); leftservo.write(90 + speed ); delay(750); // Avancer pendant 3 sec rightservo.write(90 - speed); leftservo.write(90 + speed ); delay(3000); // Tour de 90degre a droite rightservo.write(90 + speed); leftservo.write(90 + speed ); delay(750); gostop(); }
samedi 17 août 2013
Introduction à l'Arduino
Pour arriver à mener à bien mon projet de robot il m'a fallu mettre la main sur un Arduino.
Mon robot avancera grâce à deux servos moteurs. Ceux-ci sont gerés grâce à des impulsions ( PWM). Le raspberry peut générer ce genre d'impulsions mais de façon software tandis que l'arduino les génère de façon hardware (plus précise).
Pour comprendre la différence voici un vidéo de deux servos contrôlés via le Rasp :
Et deux servos contrôlés via un arduino et commandés par le Raspberry :
L'autre avantage de coupler le montage à un Arduino est de pouvoir profiter des GPIO du raspberry pour contrôler d'autres choses (émetteur-recepteur 433MHZ, webcam, etc, etc)
.
Mon robot avancera grâce à deux servos moteurs. Ceux-ci sont gerés grâce à des impulsions ( PWM). Le raspberry peut générer ce genre d'impulsions mais de façon software tandis que l'arduino les génère de façon hardware (plus précise).
Pour comprendre la différence voici un vidéo de deux servos contrôlés via le Rasp :
Et deux servos contrôlés via un arduino et commandés par le Raspberry :
L'autre avantage de coupler le montage à un Arduino est de pouvoir profiter des GPIO du raspberry pour contrôler d'autres choses (émetteur-recepteur 433MHZ, webcam, etc, etc)
.
Premiers pas avec le Raspberry
Il y a de ca 6 mois j'ai fait l'acquisition d'un Raspberry. Voici à quoi ça ressemble pour ceux qui ne connaissent pas :
Il y a moyen de faire beaucoup de choses avec cette carte et je m'en étais exclusivement servi comme Media Center (Installation d'XBMC).
Relié à un NAS Synology et commandé via HDMI CEC (Protocole qui autorise l'envoie d'information via le port HDMI) et donc tout est géré via la télécommande de ma TV.
Voici les liens utiles dont je me suis servi pour l'installation et la configuration :
J'ai opté pour la distribution Openelec car elle était la plus stable à l'époque. J'ai cependant entendu beaucoup de bien du Raspbmc et pour moi les deux doivent se valoir à l'heure actuelle.
Lien :
Install d'Openelec :http://squirrelhosting.co.uk/hosting-blog/hosting-blog-info.php?id=9
Configuration et Overclock : http://youresuchageek.blogspot.be/2012/09/howto-raspberry-pi-openelec-on.html
Mapping des boutons de la telecommande : http://wiki.xbmc.org/index.php?title=Keymap
Comme d'habitude si vous souhaitez plus d'info sur la configuration un petit commentaire suffira
Néanmoins les port GPIO (à gauche de l'image) m'intriguaient et j'ai décidé d'en apprendre plus. J'ai suivi de nombreux tutoriaux et je me suis lancé dans l'apprentissage de l’électronique à l'aide du Raspberry.
Mon projet est d'arriver à me servir du raspberry pour contrôler un robot via wifi (que j'aimerais équiper d'une webcam et de différents capteurs).
C'est un gros projet et j’évolue par étape. Je posterais sur ce blog l’évolution de la commande du matériel au premier pas du robot (si tout marche comme prévu :-))
Raspberry pi Model B |
Relié à un NAS Synology et commandé via HDMI CEC (Protocole qui autorise l'envoie d'information via le port HDMI) et donc tout est géré via la télécommande de ma TV.
Voici les liens utiles dont je me suis servi pour l'installation et la configuration :
J'ai opté pour la distribution Openelec car elle était la plus stable à l'époque. J'ai cependant entendu beaucoup de bien du Raspbmc et pour moi les deux doivent se valoir à l'heure actuelle.
Lien :
Install d'Openelec :http://squirrelhosting.co.uk/hosting-blog/hosting-blog-info.php?id=9
Configuration et Overclock : http://youresuchageek.blogspot.be/2012/09/howto-raspberry-pi-openelec-on.html
Mapping des boutons de la telecommande : http://wiki.xbmc.org/index.php?title=Keymap
Comme d'habitude si vous souhaitez plus d'info sur la configuration un petit commentaire suffira
Néanmoins les port GPIO (à gauche de l'image) m'intriguaient et j'ai décidé d'en apprendre plus. J'ai suivi de nombreux tutoriaux et je me suis lancé dans l'apprentissage de l’électronique à l'aide du Raspberry.
Mon projet est d'arriver à me servir du raspberry pour contrôler un robot via wifi (que j'aimerais équiper d'une webcam et de différents capteurs).
C'est un gros projet et j’évolue par étape. Je posterais sur ce blog l’évolution de la commande du matériel au premier pas du robot (si tout marche comme prévu :-))
mardi 18 juin 2013
SAPIEN : Powershell Studio 2012
Cette article à pour but de vous présenter un produit qui permet facilement ( et j'insiste sur le facilement ) de créer des interfaces GUI pour Powershell.
Il ya un an j'ai eu l'idée de faire une interface pour mes collègues qui sont allergiques au prompt.
J'avais découvert cette société qui propose un module ASP.NET qui permet d’interagir avec Powershell. ( http://www.powershellserver.com/ ).
Voici le genre d'interface WEB que l'on peut créer avec cette méthode :
Mon principale problème avec ce genre d'interface est qu'il faut de bonne connaissance en ASP pour que celle-ci soit modulable.
je me suis donc tourné vers une solution GUI Powershell Studio 2012.
Voici à quoi ressemble l'interface du soft :
Et le resultat : cette interface permet de lister les process en cours sur ma machine et de faire une recherche.
Il ya un an j'ai eu l'idée de faire une interface pour mes collègues qui sont allergiques au prompt.
J'avais découvert cette société qui propose un module ASP.NET qui permet d’interagir avec Powershell. ( http://www.powershellserver.com/ ).
Voici le genre d'interface WEB que l'on peut créer avec cette méthode :
Mon principale problème avec ce genre d'interface est qu'il faut de bonne connaissance en ASP pour que celle-ci soit modulable.
je me suis donc tourné vers une solution GUI Powershell Studio 2012.
Voici à quoi ressemble l'interface du soft :
Et le resultat : cette interface permet de lister les process en cours sur ma machine et de faire une recherche.
Mon but ici est de créer une interface générale permettant de :
- Pinguer une liste de machine
- Faire des query SQL
- Automatiser certaines actions dans l'AD.
Si vous êtes interessé par le produit et que vous souhaitez plus d'info ou que vous avez des questions, les commentaires sont là ;-)
Inscription à :
Articles (Atom)