X-Rover 3.1 Учебно-тренировочный робот

Учебно-тренировочный робот для изучения совместной работы Arduino Mega 2560 и pcDuino.

Основной блок управления двигателями и другими датчиками собран на Arduino Mega 2560. Для обработки видео используется pcDuino. Внизу есть фото с диограмой всего робота. Робот управляется через WWW, Telnet или при помощи IR (Инфокрасный пульт управления). pcDuino доступна через WiFi — через USB WiFi Edimax. Доступ к Arduino Mega тоже возможен через WiFi — для этого использовали модуль WiFly от SparkFun. pcDuino и Arduino Mega общаются между сабой через UART или через WiFi.

— Сейчас работает трансляция с камеры (можно в режиме реального времени смотреть все то что видит робот)

 

pcDuino

Сайт производителя pcDuino

pcduino pcduino-pinout

 

Dimensions: 125mm X 52mm

Features:

  • 1GHz ARM Cortex A8 CPU
  • GPU: OpenGL ES2.0, OpenVG 1.1 Mali 400 core
  • 1GB DRAM
  • Onboard Storage: 2GB Flash, microSD card (TF) slot for up to 32GB
  • Arduino-Style Peripheral Headers (Adapter Needed for Shield Form-Factor)
  • HDMI Video Output
  • Linux3.0 + Ubuntu12.10 Supported
  • 0.1″ Spaced GPIO Headers
  • RJ45 Ethernet Connection
  • Power Requirements: 2A @ 5VDC
  • API to access the following interfaces:
    • UART
    • ADC
    • PWM
    • GPIO
    • I2C
    • SPI
  • Program in C, C++ with GNU tool chain
  • Program in Java with standard Android SDK

Купить: SparkFun

Работаем с I2C

Для начала установим следующие пакеты:

 sudo apt-get install i2c-tools
 sudo apt-get install python-smbus
root@ubuntu:# i2cdetect -y 2
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- 1d -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --

Для доступа из С/C++ не забываем сделать:

roto# modprobe gpio
root# modprobe pwm
root# modprobe adc

Доступ к UART (GPI0 and GPI1) из Python

#!/usr/bin/python

import serial

## Select and configure the port

arduino = serial.Serial('/dev/ttyS1',baudrate=115200,timeout=10)
arduino.write("Arduino, Hello")

## Close the port so other applications can use it.

arduino.close()

X-Rover 2.0

Это вторая версия платформы, заменили двигатели и немного пропорции, еще есть над чем поработать.

x-rover-v2-2 x-rover-v2