Diferencia entre revisiones de «Main page (English)»

De Proyecto Butiá
Saltar a: navegación, buscar
(Programming Languages)
(Butiá Project)
 
(No se muestran 23 ediciones intermedias de otro usuario)
Línea 3: Línea 3:
 
'''For full documentation please see [[Página_principal]] (in Spanish)'''
 
'''For full documentation please see [[Página_principal]] (in Spanish)'''
  
This project aims to create a simple platform, which makes tools ​​more available to school students which can enable them to internalize programming the behavior of robots. The project seeks to expand the performance of the OLPC XO computer through Butiá's sensory capabilities, turning it into a mobile robotic platform. Currently the 1.0 Project implementation is in kit form, distributed to 28 public schools in Uruguay, with a set of sensors and components for mounting the sensors on the mobile platform where you put the XO computer.
+
This project aims to create a simple platform, which makes tools ​​more available to school students which can enable them to internalize programming the behavior of robots. The project seeks to expand the performance of the OLPC XO computer through Butiá's sensory capabilities, turning it into a mobile robotic platform. Currently the 2.0 Project implementation is in kit form, distributed in more than 350 public schools in Uruguay, with a set of sensors and components for mounting the sensors on the mobile platform where you put the XO computer.
 
The Butiá project was developed keeping in mind the fact that adding new sensors or actuators to the platform is very simple, this opens the possibility for interested users to easily implement their own sensors and actuators. Even the industrial design of the robot is open allowing construction with recycled or low cost materials.
 
The Butiá project was developed keeping in mind the fact that adding new sensors or actuators to the platform is very simple, this opens the possibility for interested users to easily implement their own sensors and actuators. Even the industrial design of the robot is open allowing construction with recycled or low cost materials.
  
Línea 11: Línea 11:
 
'''See also [[Usb4butia]] (in Spanish)'''
 
'''See also [[Usb4butia]] (in Spanish)'''
  
USB4Butiá is an input/output/USB board derived from the [[Usb4all]] and a [[usb4all_shield_butia|shield]] made ​​for that card. It is easy to build and specializes in using the robot Butiá 2.0 trying to simplify use and enhance their sensory capabilities and performance in a robust manner. The general objective of board:
+
USB4Butiá is an input/output/USB board derived from the [[Usb4all]] and a [[usb4all_shield_butia|shield]] made ​​for that card. It is based on the pic 18F4550 microcontroller. It is easy to build and is specialized for use in the Butiá robot 2.0, simplifying its use and enhancing its sensory capability and performance in a robust manner. The general objective of board:
  
A board design is open and designed with the objective that its construction is possible by hand allowing their accessibility and thus design freedom (more info: [http://www.olpcnews.com/use_cases/technology/usb4butia_a_truly_free_as_in_freedom_input_output_board.html USB4butia - A Truly Free (as in Freedom) Input/Output Board])
+
The board design is open and designed with the objective that its construction is possible by hand allowing their accessibility and thus design freedom (more info: [http://www.olpcnews.com/use_cases/technology/usb4butia_a_truly_free_as_in_freedom_input_output_board.html USB4butia - A Truly Free (as in Freedom) Input/Output Board])
  
 
The specific objectives are:
 
The specific objectives are:
Línea 28: Línea 28:
 
[[Archivo:usb4butia2.jpg|300px]]
 
[[Archivo:usb4butia2.jpg|300px]]
 
[[Archivo:usb4butia3r.jpg|300px]]
 
[[Archivo:usb4butia3r.jpg|300px]]
 +
 +
The USB4butia board is single sided and can easily be manufactured locally
 +
 +
[[Archivo:Sensores.jpg|800px]]
 +
 +
Some plug and play sensors, L-R press button, reflectivity, light, distance
 +
 +
=== Construction ===
 +
Circuit board layout [http://www.fing.edu.uy/inco/proyectos/butia/files/usb4butia-Copper.pdf].<br />
 +
List of components [[Componentes|Lista de componentes USB4butiá]]<br />
  
 
==Programming Languages==
 
==Programming Languages==
Línea 35: Línea 45:
  
 
===TurtleBots===
 
===TurtleBots===
Turtle Art is a Sugar activity inspired by Logo which makes programming concepts available to children using a iconic graphical interface where each instruction is mapped as a block. Project Butia made ​​changes adding some plugins that control various robotic kits such as Butia, Lego NXT, Lego WeDo, FollowMe and Sumbot. You can [http://activities.sugarlabs.org//en-US/sugar/addon/4434 download the TurtleBots activity here].
+
[http://wiki.sugarlabs.org/go/Activities/TurtleArt Turtle Art] is a Sugar activity inspired by Logo which makes programming concepts available to children using a iconic graphical interface where each instruction is mapped as a block. Project Butia made ​​changes adding some plugins that control various robotic kits such as Butia, Lego NXT, Lego WeDo, FollowMe and Sumbot. You can [http://activities.sugarlabs.org//en-US/sugar/addon/4434 download the TurtleBots activity here].
  
 
The Butia palette supports hotplug plug and play I/O devices. Devices not currently connected are grey, devices connected are green and identify the port to which they are connected.
 
The Butia palette supports hotplug plug and play I/O devices. Devices not currently connected are grey, devices connected are green and identify the port to which they are connected.
Línea 46: Línea 56:
  
 
===Butialo===  
 
===Butialo===  
[http://wiki.sugarlabs.org/go/Activities/Butialo Butialo] is a user-friendly environment that allows programming of the Butiá in the Lua language. Butialo is a derivative of Pippy IDE which simplifies the creation of programs by autodetecting Butiá I/O components and offering snippets of code to access them. [http://activities.sugarlabs.org/en-US/sugar/addon/4457 Download here]
+
[http://wiki.sugarlabs.org/go/Activities/Butialo Butialo] is a user-friendly environment that allows programming of the Butiá in the [http://www.lua.org/manual/5.2/ Lua] language. Butialo is a derivative of Pippy IDE which simplifies the creation of programs by autodetecting Butiá I/O components and offering snippets of code to access them. [http://activities.sugarlabs.org/en-US/sugar/addon/4457 Download here]
  
 
[[Archivo:Screenshot.png|300px|alt=Butialo, IDE de Lua para Butia|Butialo, Lua for Butia]]
 
[[Archivo:Screenshot.png|300px|alt=Butialo, IDE de Lua para Butia|Butialo, Lua for Butia]]
Línea 55: Línea 65:
  
 
* [[API|Butiá API in Python]] (Spanish)
 
* [[API|Butiá API in Python]] (Spanish)
 +
* [[APIenglish|Butiá API in Python]] (English)
 
* [[ejemplos|Examples in Python using the Python API]] (Spanish)
 
* [[ejemplos|Examples in Python using the Python API]] (Spanish)
 +
 +
To access the API from Pippy, close the pybot_server if is running. Then create an instance of USB4butia (rather than of the butiaAPI as described in the links above). All the calls are then the same as to the butiaAPI but you are speaking directly with the usb4butia board. (Requires TurtleBots V19 or better)
 +
 +
import sys
 +
sys.path.insert(0, '/home/olpc/Activities/TurtleBots.activity/plugins/butia/pybot')
 +
import usb4butia
 +
robot = usb4butia.USB4Butia()
  
 
==Butia Firmware==
 
==Butia Firmware==
'''See [[Grabar_Firmware]] (in Spanish)'''
+
'''See [[Firmware]] and [[Grabar_Firmware]] (in Spanish)'''
  
[http://activities.sugarlabs.org/addon/4621 This activity] allows the upgrading of the firmware of the USB4butia board.
+
The first time a blank PIC is used, it is necessary to use a PIC programmer. For later upgrades [http://activities.sugarlabs.org/addon/4621 this activity] allows the upgrading of the firmware of the USB4butia board.
  
  
 
[[Archivo: butiaFirmware_captura.png | 300px | Butiá Firmware Activity]]
 
[[Archivo: butiaFirmware_captura.png | 300px | Butiá Firmware Activity]]
  
==Note==
+
==Notes==
Depending on your operating system, you might need to execute the following 2 lines of code in Terminal to enable USB communication with the USB4butia
+
(1) Depending on your operating system, you might need to execute the following 2 lines of code in Terminal to enable USB communication with the USB4butia
  
 
[[Archivo:Udev.jpg]]
 
[[Archivo:Udev.jpg]]
 +
 +
(2) The XO-4 and XO-1.75 with ARM CPU's are not supported till Turtlebots [http://www.fing.edu.uy/~aaguiar/files/TurtleBots-19.xo V19]

Revisión actual del 13:09 17 oct 2014

Butiá Project

For full documentation please see Página_principal (in Spanish)

This project aims to create a simple platform, which makes tools ​​more available to school students which can enable them to internalize programming the behavior of robots. The project seeks to expand the performance of the OLPC XO computer through Butiá's sensory capabilities, turning it into a mobile robotic platform. Currently the 2.0 Project implementation is in kit form, distributed in more than 350 public schools in Uruguay, with a set of sensors and components for mounting the sensors on the mobile platform where you put the XO computer. The Butiá project was developed keeping in mind the fact that adding new sensors or actuators to the platform is very simple, this opens the possibility for interested users to easily implement their own sensors and actuators. Even the industrial design of the robot is open allowing construction with recycled or low cost materials.

Liceo1 colonia.JPG

USB4butia

See also Usb4butia (in Spanish)

USB4Butiá is an input/output/USB board derived from the Usb4all and a shield made ​​for that card. It is based on the pic 18F4550 microcontroller. It is easy to build and is specialized for use in the Butiá robot 2.0, simplifying its use and enhancing its sensory capability and performance in a robust manner. The general objective of board:

The board design is open and designed with the objective that its construction is possible by hand allowing their accessibility and thus design freedom (more info: USB4butia - A Truly Free (as in Freedom) Input/Output Board)

The specific objectives are:

  • Low cost
  • Using components available in the local market
  • Having ports connectors for devices which support plug and play and hotplug
  • Bus for AX12 motors
  • Handling PWM servo motors
  • HackPoints for low level access


Usb4butia1.jpg Usb4butia2.jpg Usb4butia3r.jpg

The USB4butia board is single sided and can easily be manufactured locally

Sensores.jpg

Some plug and play sensors, L-R press button, reflectivity, light, distance

Construction

Circuit board layout [1].
List of components Lista de componentes USB4butiá

Programming Languages

See also Lenguajes de programación (in Spanish)

The Butia Robot can be easily controlled from any programming language which supports TCP / IP connection.

TurtleBots

Turtle Art is a Sugar activity inspired by Logo which makes programming concepts available to children using a iconic graphical interface where each instruction is mapped as a block. Project Butia made ​​changes adding some plugins that control various robotic kits such as Butia, Lego NXT, Lego WeDo, FollowMe and Sumbot. You can download the TurtleBots activity here.

The Butia palette supports hotplug plug and play I/O devices. Devices not currently connected are grey, devices connected are green and identify the port to which they are connected.

Butia-palette-ingles.jpg

The Butia Extras palette is shown below. It supports the 8 additional I/O pins or HackPoints.

Butia-palette-xtra-ingles.jpg

Butialo

Butialo is a user-friendly environment that allows programming of the Butiá in the Lua language. Butialo is a derivative of Pippy IDE which simplifies the creation of programs by autodetecting Butiá I/O components and offering snippets of code to access them. Download here

Butialo, IDE de Lua para Butia

Python

A Python programming language API is available to program the Butiá robot's behavior .

To access the API from Pippy, close the pybot_server if is running. Then create an instance of USB4butia (rather than of the butiaAPI as described in the links above). All the calls are then the same as to the butiaAPI but you are speaking directly with the usb4butia board. (Requires TurtleBots V19 or better)

import sys
sys.path.insert(0, '/home/olpc/Activities/TurtleBots.activity/plugins/butia/pybot')
import usb4butia
robot = usb4butia.USB4Butia()

Butia Firmware

See Firmware and Grabar_Firmware (in Spanish)

The first time a blank PIC is used, it is necessary to use a PIC programmer. For later upgrades this activity allows the upgrading of the firmware of the USB4butia board.


Butiá Firmware Activity

Notes

(1) Depending on your operating system, you might need to execute the following 2 lines of code in Terminal to enable USB communication with the USB4butia

Udev.jpg

(2) The XO-4 and XO-1.75 with ARM CPU's are not supported till Turtlebots V19