Affichage des articles dont le libellé est computer vision. Afficher tous les articles
Affichage des articles dont le libellé est computer vision. Afficher tous les articles

19/06/2015

Visualiser une méthode pour la modifier


Depuis l'article d'hier, où l'on a vu comment enregistrer une méthode simple pour l'envoyer à notre maison, ou à tout système Smag0, je l'ai un petit peu remaniée.
 Pour quelle soit encore plus simple, j'ai utilisé le format .xls propre à Excel... Qui ne connait pas Excel... (Possible aussi avec LibreOffice, Openoffice...).

J'ai donc repris la méthode que l'on a confectionné hier, et j'en ai fait un fichier .xls de trois colonne, la première représentant un sujet, la deuxième, une propriété, et la troisième l'objet au sens de RDF (voir l'article précédent pour ceux qui auraient loupé la séance d'hier) avec nos déclarations :

CuireDesPâtes rdf:type Methode
FaireBouillirEau rdf:type Etape
AjouterSel rdf:type Etape
VerserPâtes rdf:type Etape
Remuer rdf:type Etape
Attendre10Min rdf:type Etape
EgoutterPâtes rdf:type Etape
CuireDesPâtes dc:hasPart FaireBouillirEau
CuireDesPâtes dc:hasPart AjouterSel
CuireDesPâtes dc:hasPart VerserPâtes
CuireDesPâtes dc:hasPart Remuer
CuireDesPâtes dc:hasPart Attendre10Min
CuireDesPâtes dc:hasPart EgoutterPâtes
CuireDesPâtes rdf:first FaireBouillirEau
FaireBouillirEau xhv:next AjouterSel
AjouterSel xhv:next VerserPâtes
VerserPâtes xhv:next Remuer
VerserPâtes xhv:next Attendre10Min
Attendre10Min xhv:next EgoutterPâtes
EgoutterPâtes xhv:next MethodeServirPâtes
FaireBouillirEau dc:hasPart SortirCasserole
FaireBouillirEau dc:hasPart RemplirEau
FaireBouillirEau dc:hasPart PoserSurGaziniere
FaireBouillirEau dc:hasPart AllumerLeFeu
SortirCasserole dc:hasPart AllerDevantPlacardBasGauche
SortirCasserole dc:hasPart OuvrirPortePlacardBasGauche
SortirCasserole dc:hasPart AttraperCasserole
SortirCasserole dc:hasPart Reculer
SortirCasserole dc:hasPart FermerPlacardBasGauche
SortirCasserole dc:hasPart SeDeplacerVersEvier
AllerDevantPlacardBasGauche xhv:next OuvrirPortePlacardBasGauche
OuvrirPortePlacardBasGauche xhv:next AttraperCasserole
AttraperCasserole xhv:next Reculer
Reculer xhv:next FermerPlacardBasGauche
FermerPlacardBasGauche xhv:next SeDeplacerVersEvier
SeDeplacerVersEvier xhv:next RemplirEau
MethodeServirPâtes rdf:type Methode
CuireDesPâtes xhv:next MethodeServirPâtes
PoserSurGaziniere xhv:next AllumerLeFeu
RemplirEau dc:hasPart PlacerCasseroleSousRobinet
RemplirEau dc:hasPart AllumerRobinet
RemplirEau dc:hasPart RemplirCasseroleAuTroisQuarts
RemplirEau dc:hasPart FermerRobinet
FermerRobinet xhv:next PoserSurGaziniere
PlacerCasseroleSousRobinet xhv:next AllumerRobinet
AllumerRobinet xhv:next RemplirCasseroleAuTroisQuarts
RemplirCasseroleAuTroisQuarts xhv:next FermerRobinet
FermerRobinet xhv:next PoserSurGaziniere


 Bon, ok, j'ai rajouté quelques petits trucs depuis hier.

Mais ça commence à devenir intéressant...

ça nous donne ça  :




En utilisant Processing et la librairie Traer.physics un peu remaniée ( pour pouvoir ensuite l'intégrer dans une page web, j'ai utilisé cette version ci-> http://svbreakaway.info/tp-downloads.php#tpjs )

Pour télécharger le code Processing c'est ici :
https://drive.google.com/file/d/0B0zEK4yLB5C6MEhnVkdlZC1ZQ0U/view?usp=sharing

reste à modifier la couleur des liens, la longueur en fonctions de la propriété, indique clairement le nom des propriétés, pour facilement trouver la première sous-étape de chaque étape.

A voir, mais on peu peut-être modifier  :

VerserPâtesxhv:nextRemuer
VerserPâtesxhv:nextAttendre10Min

en une nouvelle étape de type Boucle ou Alternance (voir si ça existe, ou si on doit les créer) , ou je ne sais quoi, qui aurait une durée de 10 Minutes, serait composé de deux sous étapes : Remuer et Attendre, qui aurait elles aussi aurait une propriété durée...( remuer 10 secondes, attendre 1minute)

Prochaine étape : intégrer une méthode sur la page d'un projet .


A voir aussi avec tree.js http://mrdoob.github.io/three.js/examples/#webgl_nearestneighbour, pour visualiser les informations, http://workshop.chromeexperiments.com/ pour le GUI, ou https://github.com/blprnt/Infinite-Weft.html et http://sketchpad.cc/mwxwmUdIVC?exampleType=topic&exampleName= pour faire des tests

25/03/2014

pcDuino achat groupé , promo

Si vous aussi vous souhaitez commander une carte pcDuino, on peut peut être faire des commandes groupées (faudra peut-être rajouter la TVA !) pour limiter les frais de port (faites moi savoir si vous êtes intéressés en mettant un commentaire ou me contactant sur ce blog ou page google+) :


Différence entre pcDuino, pcDuino V2, et pcDuino V3 :


 La nouvelle carte pcDuino V3 sortira apparemment en mai 2014 : 55,69 € (conversion au 25/03/14 de 77$)
  • USB WiFi
  • Ethernet 10/100/1000Mbps


La carte pcDuino V2 : 47,73 € (66$)
RJ45 and built-in WiFi 

voir les caractéristiques sur le site du fabricant


La carte pcDuino V1 : 42,67 € (59$)
RJ45  et possibilité d'ajouter un dongle Wifi en option.



  Détail du matériel nécessaire pour le Rover pcDuino :

 (extrait de l'article http://smag0.blogspot.fr/2014/03/rover-pcduino-introduction.html

Budget Estimatif à la date du 15/03/14 :
 - 1 carte pcDuino V2 à 47,46 € ( 66$) http://store.linksprite.com/pcDuinoV2_47Euros
 - 1 webcam 3 axes (PZT) à 17,98 € (25 $) http://store.linksprite.com/webcam3axesPZT
 - 1 T-Board à 7,12 € (9.90$) http://store.linksprite.com/t-board-to-bridge-arduino-shield-to-pcduino-with-level-shifter/
 - 1 Plate-Forme à 11,69 € (16.25$) http://store.linksprite.com/linkerbot-platform/
 - 1 Arduino MotorShield à 9,70 € (13.50$) http://store.linksprite.com/motor-shield/

 Soit un total de 93.95 Euros pour les éléments de base d'un rover Wifi à base de pcDuinoV2 ( DE PLUS , IL Y A UN COUPON DE REDUCTION DE 20% EN CE MOMENT)

 A rajouter frais de port : (entre 15 et 20 €)

 rajouter les cables, vis... (je tente dès que possible de vous faire une estimation plus précise ;-)

11/03/2014

Rover pcDuino partie logicielle

Édit (25/11/2015) :

I DID IT, JE L'AI FAIT !!!

Yahoo, Eureka, ça fonctionne...

Ça roule, ça tourne, ça envoie les images... !!!

Bon ok j'ai mis le temps, mais j'y suis arrivé. J'ai mon robot explorateur, une première étape du projet "Smag0" beaucoup plus vaste, de "robot qui range ma chambre".

Contrôlable par une interface web, une application mobile, ou adaptable à toute autre interface, le robot se déplace dans la maison et vous envoie les images, que vous soyez chez vous, au bureau ou à l'autre bout du monde !!!

Je m'apprête à préparer un "kit" pour ce robot explorateur avec tout le matériel nécessaire et les instructions, pas à pas pour en monter un vous même, ou encore à le proposer déjà tout monté, alors faites-moi signe si ce projet de robot vous intéresse par mailscenaristeur@gmail.com ou par twitter  @DFaveris . 

 Voir aussi http://smag0.blogspot.fr/2014/03/rover-pcduino-introduction.html pour l'introduction et la partie matérielle.
et un guide pour l'installation des composants utiles  http://smag0.blogspot.fr/2015/12/reinstallation-pcduino.html

 
Introduction
1. Matériel
1.1 Outils nécessaires
1.2 Découverte du matériel
1.3 Montage de la caméra PTZ
1.4 Assemblage de la plate-forme
1.5 Instruction de câblage
2. Partie Logicielle
2.1 Configurer pcDuino en point d'accès WiFi
2.2 Installer Video Stream Server sur pcDuino
2.3 Installer le logiciel de contrôle
2.4 Contrôler le rover avec un PC
2.5 Contrôler le Rover avec un appareil Android
2.5.1Introduction
2.5.2 GUI
2.5.3 Introduction au code source
2.5.3.1Module de contrôle d'interface
2.5.3.2 Module de conversion du format d'images
2.5.3.3 Module de communication
2.5.4 Guide de l'utilisateur
2.6 Liens de téléchargement

 Cette partie est la deuxième partie, la partie logicielle, pour consulter l'introduction et la partie matérielle cliquez ici

infos pour éviter des galères : 
régler l'heure sur pcduino :  sudo ntpdate ntp.ubuntu.com 
régler le clavier en français : sudo setxkbmap fr


2. Partie Logicielle

Le pcDuino sert de point d'accès Wi-Fi, et un serveur de flux vidéo. Il peut transmettre
vidéo en temps réel, et accepter le commandement de commande de client par WiFi. il
contrôle le mouvement de Rover et la rotation de la caméra.



################################################################################
EDIT pour le PCDUINO V2 avec carte Wifi Noir : 
source : http://learn.linksprite.com/wifi/enable-the-wireless-ap-function-on-pcduino-v2/
################################################################################
This tutorial is use to pcDuino V2 with black wifi module (rt1818cus driver) and pcDuino Lite WiFi with black wifi module (rt1818cus driver)

The pcDuino 2 / 3, Lite Wifi with Green WiFi Module (rt1818eus driver) is different .
The built-in hostapd can’t support system service mode. However, there are one package available online.

1.Download  software tools:
$sudo apt-get update
$sudo apt-get install git vim
$sudo apt-get install isc-dhcp-server
2. Download source code for drivers from official website:
$wget ftp://WebUser:Lc9FuH5r@58.211.24.153/cn/wlan/RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911.zip
#http://www.realtek.com.tw/downloads/downloadsView.aspx?Langid=1&PNid=21&PFid=48&Level=5&Conn=4&DownTypeID=3&GetDown=false&Downloads=true#2742
3.Download header file for compiling the driver:
$sudo apt-get install pcduino-linux-headers-3.4.29+

$cd  /usr/src/ linux-headers-3.4.29+/arch
$cp  arm  armv7l  -rf
Note:  You will need to reboot pcDuino after this step if you are using pcDuino Lite wifi, wait for  3 seconds at  u-boot stage, enter the command, otherwise it can not be started properly.
$setenv loglevel 8 ramfs
$boot
$mount  /deV/nandd /mnt
$cd  /mn lib/modules/3.4.29+/kernel/drivers
$rm gpu –rf
$reboot
4. Delete original “8188cu.ko”:
$rm  /lib/modules/3.4.29+/kernel/drivers/net/wireless/rtl8192cu/8192cu.ko
$rm  /lib/modules/3.4.29+/kernel/drivers/net/wireless/8192cu.ko
5. Compile installing driver:
$unzip  RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911.zip
$cd   RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911
$chmod +x install.sh
$sudo ./install.sh
6. Finish Installation:
ubuntu@ubuntu:~/RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911$ lsmod
Module                  Size  Used by
8192cu                624916  0
sw_interrupt            2424  0
gpio                    4509  0
pwm                     5050  0
adc                     1671  0
hardwarelib             1551  4 sw_interrupt,gpio,pwm,adc
rt5370sta             616973  0

INSTALLATION HOSTAPD : 

$git clone https://github.com/jenssegers/RTL8188-hostapd

$cd RTL8188-hostapd/hostapd
$sudo make install
Install 8188’s hostapd:
$cd  RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911/wpa_supplicant_hostapd
$tar xvf wpa_supplicant_hostapd-0.8_rtw_r7475.20130812.tar.gz
$cd  hostapd
$sudo make install
Configure hostapd:
$vim  /etc/hostapd/hostapd.conf
# Basic configuration
interface=wlan3  #it depends on your own connection
ssid=wifi
channel=1
#bridge=br0
# WPA and WPA2 configuration
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=3
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
# Hardware configuration
driver=rtl871xdrv
ieee80211n=1
hw_mode=g
device_name=RTL8192CU
manufacturer=Realtek
service hostapd restart
Name this wifi AP as wifi, password as 12345678
Now you need to reset your wifi password, and you can find this wifi available, but if it’s not working, you need to configure your internet.
vim /etc/network/interfaces
auto wlan3
iface wlan3 inet static
        address 192.168.100.1
        netmask 255.255.255.0              
service networking restart
Configure dhcp:
vim /etc/dhcp/dhcpd.conf #add it in the end
subnet 192.168.100.0 netmask 255.255.255.0 {
  range 192.168.100.10 192.168.100.100;
  option routers 192.168.100.1;
  option domain-name-servers 8.8.8.8;
}
service isc-dhcp-server restart

################################################################################

2.1 Configurer pcDuino en point d'accès WiFi

  Le noyau (20130531) publié sur le site pcDuino habituellement seulement fournit pilote en mode WiFi STA. Il n'a pas les iptables pour le routage IP soit. Donc, la première étape consiste à remplacer le limage du noyau de pcDuino.
 
Vous pouvez télécharger tous les fichiers nécessaires à l'adresse :  https://s3.amazonaws.com/linksprite/pcduino/wifiAP.rar

Copier wifiAP le répertoire ubuntu:
 ubuntu@ubuntu:~$ ls
Desktop Downloads Pictures Templates c_enviroment wifiAP
Documents Music Public Videos sample
$ sudo mount /dev/nanda /boot
$ sudo cp uImage /boot -f
$ sudo cp evb.bin /boot -f
$ sudo cp 3.4.292B.tar.bz2 /lib/modules/
$ cd /lib/modules/
ubuntu@ubuntu:/lib/modules$sudo tar -xvf 3.4.292B.tar.bz2

Redémarrer pcDuino :

$sudo reboot
Consulter les modules logiciels en utilisant la commande '$ lsmod ':
root@ubuntu:/home/ubuntu# lsmod
Module Size Used by
rt5370sta 617141 0
8192cu 537048 0
rt2800usb 11321 0
rt2800lib 40721 1 rt2800usb
crc_ccitt 1094 1 rt2800lib
rt2x00usb 7245 1 rt2800usb
rt2x00lib 31040 3 rt2800usb,rt2800lib,rt2x00usb
mali_drm 2087 1
drm 157060 2 mali_drm
mac80211 257514 3 rt2800lib,rt2x00usb,rt2x00lib
cfg80211 150671 2 rt2x00lib,mac80211
mali 91258 0
disp_ump 823 0
ump 44002 4 mali,disp_ump
Redémarrez et modifier / etc / modules, retirez rt5370sta:

$sudo modprobe rt2800usb
$echo 148F 5370 > /sys/bus/usb/drivers/rt2800usb/new_id
Vous pouvez également modifier la commande ci-dessus dans un port série de débogage.
Si nous activons WLAN, "$ ifconfig wlan3 up", nous allons voir le message d'erreur suivant:

root@ubuntu:~# ifconfig wlan3 up
[ 1043.640000] phy0 -> rt2x00lib_request_firmware: Error –
Failed to request Firmware.
SIOCSIFFLAGS: No such file or directory
Il montre qu'il n'ya pas de firmware pour le dongle USB WiFi. Nous avons besoin de le mettre dans le bon endroit.  (A Modifier si pcDuino V2 ?)
Utilisez la commande "$ modinfo rt2800usb" et trouver le nom de firmware est rt2870.bin.


 root@ubuntu:~# modinfo rt2800usb
filename:
/lib/modules/3.4.29+/kernel/drivers/net/wireless/rt2x00/rt28
00usb.ko
license: GPL
firmware: rt2870.bin
description: Ralink RT2800 USB Wireless LAN driver.
version: 2.3.0
author: http://rt2x00.serialmonkey.com
 Copiez le firmware dans le répertoire correct:

 $sudo cp rt2870.bin /lib/firmware/
 Maintenant, nous redémarrons WLAN, alors nous pouvons trouver une connexion Wi-Fi:

 ”$sudo ifconfig wlan3 up”
Installez iptables:

 $sudo apt-get install iptables vim iw
Après l'installation est terminée, vérifiez si iptables a été installé avec succès:
$sudo iptables -L
root@ubuntu:~# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Télécharger et éditer hostapd:
En compilant nous aurons besoin "libnl-dev" et "libssl-dev". Alors  installons-les en premier.


 $sudo apt-get install libnl-dev libssl-dev
Hostpad 1.0 can be downloaded from http://hostap.epitest.fi/releases/.
A complete list of commands are:

ubuntu@ubuntu:~$ wget
http://hostap.epitest.fi/releases/hostapd-1.0.tar.gz
ubuntu@ubuntu:~$ tar xvf hostapd-1.0.tar.gz
ubuntu@ubuntu:~$ cd hostapd-1.0
ubuntu@ubuntu:~/hostapd-1.0$ cd hostapd/
ubuntu@ubuntu:~/hostapd-1.0/hostapd$ vim defconfig
 Trouvez la ligne contenant “#CONFIG_IEEE80211N=y”, enlevez le dièse ‘#’
Sauvegarder et quittez


ubuntu@ubuntu:~/hostapd-1.0/hostapd$ cp defconfig .config
ubuntu@ubuntu:~/hostapd-1.0/hostapd$ make
CC main.c
CC config_file.c
CC ../src/ap/hostapd.c
CC ../src/ap/wpa_auth_glue.c
CC ../src/ap/drv_callbacks.c
CC ../src/ap/ap_drv_ops.c
CC ../src/ap/utils.c
CC ../src/ap/authsrv.c
ubuntu@ubuntu:~/hostapd-1.0/hostapd$ sudo make install
mkdir -p /usr/local/bin
for i in hostapd hostapd_cli; do cp -f $i /usr/local/bin/$i; done
Vérifiez si hostpad a été installé avec succès:

ubuntu@ubuntu:~/hostapd-1.0/hostapd$ hostapd -v
hostapd v1.0
User space daemon for IEEE 802.11 AP management,
IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator
Copyright (c) 2002-2012, Jouni Malinen <j@w1.fi> and
contributors
Maintenant, nous commençons à configurer hostpad.
Nous espérons que notre hotspot est configuré comme suit,


SSID: ssid=pcduino
Password: wpa_pass
phrase=1234567890
Encryption: wpa_key_mgmt=WPA-PSK
 Configurez comme suit:

 root@ubuntu:~# nano /etc/hostapd.conf
interface=wlan3
driver=nl80211
ssid=pcduino
hw_mode=g
channel=11
dtim_period=1
rts_threshold=2347
fragm_threshold=2346
macaddr_acl=0
auth_algs=1
ieee80211n=0
wpa=2
wpa_passphrase=1234567890
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

 Note: si wlan3 peuvent changer, nous devons utiliser "ipconfig" pour vérifier.
Une fois la configuration terminée, nous utilisons les commandes suivantes pour vérifier la configuration.


 root@ubuntu:~# hostapd -dd /etc/hostapd.conf
random: Trying to read entropy from /dev/random
Configuration file: /etc/hostapd.conf
nl80211: interface wlan4 in phy phy0
rfkill: initial event: idx=0 type=2 op=0 soft=0 hard=0
rfkill: initial event: idx=1 type=1 op=0 soft=0 hard=0
nl80211: Using driver-based off-channel TX
nl80211: Register frame command failed (type=208): ret=-114 (Operation already in progress)
nl80211: Register frame match – hexdump(len=1): 06
nl80211: Failed to register Action frame processing – ignore for now
nl80211: Add own interface ifindex 5
nl80211: Set mode ifindex 5 iftype 3 (AP)
nl80211: Create interface iftype 6 (MONITOR)
nl80211: New interface mon.wlan4 created: ifindex=7
nl80211: Add own interface ifindex 7
BSS count 1, BSSID mask 00:00:00:00:00:00 (0 bits)
nl80211: Regulatory information – country=00
nl80211: 2402-2472 @ 40 MHz
nl80211: 2457-2482 @ 40 MHz
nl80211: 2474-2494 @ 20 MHz
nl80211: 5170-5250 @ 40 MHz
nl80211: 5735-5835 @ 40 MHz
nl80211: Added 802.11b mode based on 802.11g information
Allowed channel: mode=1 chan=1 freq=2412 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=2 freq=2417 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=3 freq=2422 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=4 freq=2427 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=5 freq=2432 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=6 freq=2437 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=7 freq=2442 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=8 freq=2447 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=9 freq=2452 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=10 freq=2457 MHz max_tx_power=20 dBm
Allowed channel: mode=1 chan=11 freq=2462 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=1 freq=2412 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=2 freq=2417 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=3 freq=2422 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=4 freq=2427 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=5 freq=2432 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=6 freq=2437 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=7 freq=2442 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=8 freq=2447 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=9 freq=2452 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=10 freq=2457 MHz max_tx_power=20 dBm
Allowed channel: mode=0 chan=11 freq=2462 MHz max_tx_power=20 dBm
Completing interface initialization
Mode: IEEE 802.11g Channel: 11 Frequency: 2462 MHz
nl80211: Set freq 2462 (ht_enabled=0 sec_channel_offset=0)
RATE[0] rate=10 flags=0×1
RATE[1] rate=20 flags=0×1
RATE[2] rate=55 flags=0×1
RATE[3] rate=110 flags=0×1
RATE[4] rate=60 flags=0×0
RATE[5] rate=90 flags=0×0
RATE[6] rate=120 flags=0×0
RATE[7] rate=180 flags=0×0
RATE[8] rate=240 flags=0×0
RATE[9] rate=360 flags=0×0
RATE[10] rate=480 flags=0×0
RATE[11] rate=540 flags=0×0
Flushing old station entries

Ensuite, installez le serveur DHCP.
$sudo apt-get install dhcp3-server
Une fois que c'est fait, configurez le serveur DHCP:
$sudo nano /etc/dhcp/dhcpd.conf
Ajoutez les lignes suivantes à la fin du fichier:
subnet 192.168.0.0 netmask 255.255.255.0
{
range 192.168.0.2 192.168.0.10;
option routers 192.168.0.1; #router address
option domain-name-servers 8.8.8.8;
}
Redémarrez hostapd:
root@ubuntu:~# killall hostapd
hostapd: no process found
root@ubuntu:~# hostapd -B /etc/hostapd.conf
Configuration file: /etc/hostapd.conf
Using interface wlan4 with hwaddr 00:c3:16:a0:03:00 and ssid ‘pcduino’
Définissez l'adresse IP de WiFi de pcDuino:
root@ubuntu:~# ifconfig wlan4 192.168.0.1
Activez DHCP :
root@ubuntu:~# dhcpd wlan4 -pf /var/run/dhcp-server/dhcpd.pid
Internet Systems Consortium DHCP Server 4.1-ESV-R4
Copyright 2004-2011 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
Wrote 0 leases to leases file.
Listening on LPF/wlan4/00:c3:16:a0:03:00/192.168.0.0/24
Sending on LPF/wlan4/00:c3:16:a0:03:00/192.168.0.0/24
Sending on Socket/fallback/fallback-net
Activez l'IP forwarding:
root@ubuntu:~# echo 1 >/proc/sys/net/ipv4/ip_forward
 Réglez NAT:
root@ubuntu:~# iptables -t nat -A POSTROUTING -o eth0 -j
MASQUERADE
Après la configuration ci-dessus est fait, nous devrions voir un point d'accès nommé "pcduino".
Remarque: Dans le débogage, vérifiez votre WiFi en utilisant "ipconfig" et le changement wlan en conséquence.

Installer Video Stream Server sur pcDuino

 

Nous utilisons le package opensource mjpg-streamer de mettre en œuvre le serveur de transmission vidéo. Le client peut être un navigateur ou une application spéciale.

D'abord installer quelques logiciels.

$sudo apt-get install libv4l-dev
$sudo apt-get install libjpeg8-dev
$sudo apt-get install subversion
$sudo apt-get install imagemagick
Le libv4l-dev et ibjpeg8-dev sont des bibliothèques. La Subversion et ImageMagick sont nécessaires pour compiler le code source mjpg-streamer.


Ensuite téléchargez, compiler et installer le logiciel serveur vidéo mjpg-streamer.


$svn co https://mjpg-streamer.svn.sourceforge.net/svnroot/mjpg-streamer mjpg-streamer
! remplacé par : svn co svn co https://svn.code.sf.net/p/mjpg-streamer/code/ mjpg-streamer

$cd mjpg-streamer
$make USE_LIBV4L2=true clean all
$sudo make DESTDIR=/usr install
Après l'installation est terminée, nous devons ouvrir le serveur de vidéo-streamer jpg. La commande pour activer le service est:

$mjpg_streamer -i "/usr/lib/input_uvc.so -d /dev/video0 -y -r 320x240 -f 10" -o "/usr/lib/output_http.so -p 8090 -w /var/www/mjpg_streamer"
Les paramètres sont les suivants:

-d: device
-r: resolution
-f: frequency
Si votre webcam ne prend pas en charge le format MJPEG, nous pouvons utiliser '-y' pour spécifier d'utiliser le format YUYV au lieu du format MJPEG.

-p: port
-w: web directory

Sur un terminal pcDuino nous utilisons la commande "ipconfig" pour obtenir l'adresse IP de l'pcDuino. Puis dans un navigateur en un client, visitez http://192.168.1.3:8090/?action=stream pour accéder à la vidéo en temps réel. L'adresse 192.168.1.3 est l'adresse IP de l'pcDuino.
(erreur sur le document originel ? action = steam au lieu de stream ? voir copie ecran)

 

Installer le logiciel de contrôle

traduction à reprendre page 60

Contrôler le rover avec un PC

Contrôler le Rover avec un appareil Android

Introduction

GUI

Introduction au code source

- Module de contrôle d'interface
- Module de conversion du format d'images
- Module de communication

Guide de l'utilisateur

Liens de téléchargement

Rover PcDuino Introduction et partie matérielle

Édit (25/11/2015) :

I DID IT, JE L'AI FAIT !!!

Yahoo, Eureka, ça fonctionne...

Ça roule, ça tourne, ça envoie les images... !!!

Bon ok j'ai mis le temps, mais j'y suis arrivé. J'ai mon robot explorateur, une première étape du projet "Smag0" beaucoup plus vaste, de "robot qui range ma chambre".

Contrôlable par une interface web, une application mobile, ou adaptable à toute autre interface, le robot se déplace dans la maison et vous envoie les images, que vous soyez chez vous, au bureau ou à l'autre bout du monde !!!

Je m'apprête à préparer un "kit" pour ce robot explorateur avec tout le matériel nécessaire et les instructions, pas à pas pour en monter un vous même, ou encore à le proposer déjà tout monté, alors faites-moi signe si ce projet de robot vous intéresse par mail scenaristeur@gmail.com ou par twitter  @DFaveris

voici un guide pour l'installation des composants utiles  http://smag0.blogspot.fr/2015/12/reinstallation-pcduino.html






http://store.linksprite.com/#oid=1005_1_banner_1

cliquez sur cette image pour voir en détail les caractéristiques du pcDuino :


1. Matériel
1.1 Outils nécessaires
1.2 Découverte du matériel
1.3 Montage de la caméra PTZ
1.4 Assemblage de la plate-forme
1.5 Instruction de câblage
2.1 Configurer pcDuino en point d'accès WiFi
2.2 Installer Video Stream Server sur pcDuino
2.3 Installer le logiciel de contrôle
2.4 Contrôler le rover avec un PC
2.5 Contrôler le Rover avec un appareil Android
2.5.1Introduction
2.5.2 GUI
2.5.3 Introduction au code source
2.5.3.1Module de contrôle d'interface
2.5.3.2 Module de conversion du format d'images
2.5.3.3 Module de communication
2.5.4 Guide de l'utilisateur
2.6 Liens de téléchargement

Introduction

(pour la prise en main du pc duino -> Mon club Elec)
Avec le développement de matériel et de logiciel embarqué , diverses technologies sont de plus en plus intégrée . En conséquence , l'obligation de matériel et de logiciels de co-développement est de plus en plus et le cycle d'apprentissage de l'ingénieur s'allonge .
Au cours des dernières années , le mouvement open source du matériel est de plus en plus populaire dans le monde . Arduino est un chef de file dans ce mouvement . Les groupes d'utilisateurs répartis des ingénieurs aux étudiants, puis aux élèves de collège ou même les enfants de l'école primaire . L'émergence d'une variété de plates-formes matérielles open source réduit considérablement la courbe d'apprentissage , stimule l'innovation et accélère la conversion de l'idée à la réalisation. pcDuino est un Arduino superbe avec mini fonctionnalités d'un PC . pcDuino dispose à bord interface matérielle compatible avec l'interface Shield Arduino Uno . Arduino Shields disponibles sur le marché peut être installé sur pcDuino avec un conseil simple traduction ( T -Board ) . Le code source Arudino est également entièrement compatible avec pcDuino . Le système d'exploitation utilisé par pcDuino est open source Linux Ubuntu . Open-source des logiciels Linux innombrables avec de nombreux conseils de matériel open-source peuvent être combinés dans pcDuino pour créer une variété d'applications . pcDuino une plate-forme idéale pour le développement offre implique un logiciel open source et du matériel open source .
Dans cet article, nous montrons comment utiliser pcDuino de construire un réseau WiFi en temps réel de vidéo surveillance robot télécommandé . Sur le plan matériel , nous utilisons le bouclier moteur pour Arduino pour commander les moteurs et servo de la caméra de PZT de Rover . Sur le plan logiciel , nous utilisons un système pcDuino Linux pour obtenir un accès WiFi AP , serveur de streaming vidéo et de la communication TCP / IP .
Dans les sections suivantes , nous les détails la mise en œuvre matérielle et logicielle .

1. Matériel

1.1 Outils nécessaires

- Pince diagonale, pince à bec, 3 mm manche, 2 mm tournevis à tête plate, Tournevis Phillips 3 mm, 5 mm tournevis cruciforme, multimètre, fer à souder, soudure, ruban, pinces, couteau de papier peint


 

1.2 Découverte du matériel

1.2.1 pcDuino

La carte pcDuino est le cerveau du Rover. Elle gère le streaming vidéo,  la communication WiFi et contrôle toutes les pièces mécaniques en Rover.


Les caractéristiques matérielles de pcDuino 
 CPU: core de 1GHz ARM Cortex A8 
 GPU: OpenGL ES2.0, OpenVG 1.1 Mali 400 noyau 
 DRAM: 1 Go 
 le stockage à bord: 2 Go flash, prise microSD extensible jusqu'à 32 Go 
• Sortie vidéo: HDMI 
• Interface d'extension: 2,54 mm Têtes compatible avec Arduino 
 Réseau: Interface RJ45 et USB extensible dongle WiFi (non inclus) (!!La carte pcDuino V2 inclu le WiFi))
• Alimentation: 5V 2A 
 Dimension: 125mm X 52mm

Les caractéristiques logicielles de pcDuino 
 Système d'exploitation: Ubuntu , Android
 API: Toutes les broches extensibles de style Arduino peuvent être accessibles avec l'API, y compris UART, ADC, PWM,GPIO, SPI, I2C 
 Langages de programmation: C, C + + avec la chaîne d'outils GNU, Python, Java




1.2.2 caméra vidéo PZT

(PZT selon wikipedia : Pan Tilt Zoom (en), les unités PTZ sont utilisées pour la mise au point des caméras de surveillance et de visioconférence sur un objet. Pan est la rotation de la caméra autour de l'axe Z, Tilt est l'inclinaison de la caméra sur l'axe X, et Zoom est le mouvement de la lentille motorisée le long de l'axe Y.)
La caméra PTZ comprend deux servo-moteurs pour l'orientation de la caméra (180 degrés vertical et 180 degrés horizontal).Elle peut être directement branchée sur la carte pcDuino avec un câble USB.



Spécifications de la caméra: 
  • Pixel: 30W
  • Capteur: COMS
  • Taille du capteur: 4386 * 3.64 mm
  • Résolution maximale: 640 * 480
  • Format de l'écran: 26bit RGB
  • Interface: interface de transmission à haute vitesse USB2.0, compatible avec USB1.0
  • La balance automatique des blancs, la compensation de couleur

1.2.3 Alimentation

Une alimentation 12V/2A est utilisée pour charger la batterie.


Batterie

Une batterie rechargeable de haute capacité au lithium-ion est utilisée.
Veuillez suivre les consignes de sécurité des batteries au lithium pour éviter les accidents. Sa tension d'entrée est 12.6VDC, et la tension de sortie est 12.0VDC évalué à 4800mAh. 



Fils, Vis et câbles



Plate-Forme

Tous les principaux accessoires de robots  sont installés sur la plate-forme de robot. S'il vous plaît noter que les différents modèles peuvent être différentes dans les images suivantes.


Roulette

Le lanceur supporte l'arrière de la plate-forme du robot. Lors du montage des vis, veillez à ne pas mettre l'écrou sur le côté en dessous. Ceci pourrait affecter la direction de la roulette.



Roues de chariot et DC moteurs à engrenages

DC motoréducteurs pilotes du robot. (moteurs à courant continu)

Support de montage des moteurs DC

Lors de l'installation, le côté de trois trous est fixé à la plate-forme du robot, le côté avec deux trous est fixé à la moteur-réducteur à courant continu.


Carte d'extension moteur pour Arduino

Caractéristiques: 
 Compatible avec Arduino 
 le mode de commande de vitesse de PWM 
• Indicateur 4 directions 
 Compatible avec Linker Kit 2,54 mm interface du plug terrain de Grove. 
 grands modèles de dispositifs de refroidissement 
• Soutenir les 14 servos 
 Dimensions: 68.5x54.5x29.5 mm 
Remarque: Lorsque le courant dépasse 1000mA, la puce du pilote et dissipateur de chaleur seront très chauds.



Carte d'extension T-Board

La carte T-Board convertit le signal TTL 3,3 V en 5V. Elle est utilisé pour installer la carte d'extension moteur sur la carte pcDuino. 

Module de puissance

Ce qui suit est le schéma du module d'alimentation.

Dimensions: Longueur x largeur distance de 75x29mm entre deux trous: 50mm 
Tension d'entrée: 12V 
Tension de sortie: 5V 
Courant de sortie: 2A








Dongle WiFi

!! La carte pcDuino V2 inclu le WiFi -> le dongle ne devrait plus être nécessaire !!
Il prend en charge la norme IEEE 802.11 b / g / n normes, supporte les connexions USB 2.0. 
Il s'agit d'un module WLAN compact à faible coût avec des dimensions: 32x13 mm.

Montage de la caméra PTZ

Avant de monter la plate-forme de robot, nous avons besoin de préparer la caméra PTZ.

Étape 1: Préparer la caméra

Étape 2 : Retirez l'aiguille 


Étape 3: Retirer les vis sur le fond 


Étape 4 : Afin de fixer la caméra sur l'appareil , nous avons besoin de percer des trous et utiliser des vis . Nous pouvons couper les deux oreilles sur le fond et obtenir deux trous . 




Etape 5: Modifier le montage de la caméra . Coupez les deux anciennes fixations et lisser la surface . 




Étape 6 : Aligner la fixation et le bas de l'appareil . Marquez la position du trou avec un stylo ou un crayon , et percer deux trous . 

Etape 7: Afin de ne pas bloquer les deux trous déjà sur le fond de l'appareil , percez deux autres trous sur les deux bords de l'appareil. 




Étape 8: Mettre le couvercle inférieur de la caméra , et assemblez le dispositif, insérer les vis. 






Etape 9: L'appareil est assemblé . Serré avec les vis . 


Étape 10 : Installez l'appareil à gouverner . Faites attention de ne pas installer dans la mauvaise direction .


Étape 11 : Installez le support de la tête . Comparer à l'ouverture , si le balancier est trop long , couper la partie excédentaire et serrez avec les vis . 


Etape 12: Démonter le support de la tête et installer un autre appareil à gouverner . 




Étape 13 : Fixez la caméra à l'appareil PTZ . 


Étape 14: Coupez le pied multifonctions de direction et l'installer dans la base . 



Insérez le support dans la base , serré avec des vis. Ensuite, l'assemblage de la caméra mobile est terminé.

Assemblage de la plate-forme

Étape 1: Installez le moteur à courant continu en position.

La couleur du moteur peut être différente de la couleur du châssis. Première souder les fils du moteur, sans tenir compte de la polarité. Un condensateur céramique de 0,1 uF peut être utilisé s'il est disponible. On peut éviter les interférences etprolonger le cycle de vie du moteur. 
Ensuite, installez le support du moteur.



Etape 2: Installation des roulettes.

Étape 3: Installation des roues.
Étape 4: Installer des montants de cuivre qui sont utilisés pour maintenir le panneau de commande.

Étape 5: Fixez le panneau pcDuino au châssis.


Étape 6: Fixez le panneau du module d'alimentation au châssis. S'il vous plaît noter que le module peut être chaud en fonctionnement. Faites donc attention à ne pas toucher avec les mains.



Étape 7: Installez la batterie.




Etape 8: Installez la caméra PTZ.

 

Étape 9: Installation T-board en bord pcDuino. Il est nécessaire pour le blindage du moteur.








Étape 10: Installez le bouclier de commande de moteur.

 




Etape 11: Insérez dongle WiFi en pcDuino.
(seulement en cas de pcDuino V1 , la V2 inclu le module WiFi)


Nous y sommes presque!


Instruction de câblage

 

Servo dans le sens vertical pour appareil photo PZT:
- Rouge (VCC) -> bouclier moteur (VCC)
- Marron (GND) -> bouclier moteur (GND)
- Orange (Control) -> bouclier moteur (D7)

Servo dans le sens horizontal pour caméra PZT:
- Rouge (VCC) -> bouclier moteur (VCC)
- Marron (GND) -> bouclier moteur (GND)
- Orange (Control) -> bouclier moteur (D4)

Alimentation (12V):
- (1) le bouclier moteur (VCC GND)
- (2) adaptateur (VIN GND)

pcDuino alimentation:
Ligne d'alimentation DIY Rouge (VCC) -> OUT
Noir (GND) -> GND




Vous venez de terminer la première partie, la partie matérielle, passons maintenant à la deuxième partie, la partie logicielle : 

2. Partie Logicielle