Download Print this page

Inex IOIO-BOT Manual

Android robotics

Advertisement

Quick Links

IOIO-BOT : Android Robotics 
1
IOIO-BOT
Android Robotics

Advertisement

loading
Need help?

Need help?

Do you have a question about the IOIO-BOT and is the answer not in the manual?

Questions and answers

Summary of Contents for Inex IOIO-BOT

  • Page 1  IOIO-BOT : Android Robotics  IOIO-BOT Android Robotics...
  • Page 2  IOIO-BOT : Android Robotics...
  • Page 3: Table Of Contents

     IOIO-BOT : Android Robotics  Contents Chapter 1 IOIO-Q : Android I/O board introduction..5 Chapter 2 Android development tools installation..13 Chapter 3 IOIO-RAB : IOIO Robotic Activity Board introduction...........23 Chapter 4 Buiding IOIO-BOT........29 Chapter 5 IOIO-BOT interface testing with Android device........39...
  • Page 4  IOIO-BOT : Android Robotics...
  • Page 5: Ioio-Q : Android I/O Board Introduction

    IOIO-Q : Android I/O board introduction The heart of IOIO-BOT is IOIO-Q Android input output board. IOIO-Q is compatible with IOIO (pronounced “yo-yo”) original board (or IOIO V1) that designed by Ytai; Israel computer engineer.The IOIO-Q is re-designed and produced by Innovative Experiment Co.,Ltd (INEX- www.inex.co.th / www.inexglobal.com).
  • Page 6 However, most simple ones do work. The bundled Bluetooth dongle in IOIO-BOT kit is tested and work well. An existing application code written to work over USB does not need to change to add Bluetooth support, if it is using the IOIOLib Application Framework.
  • Page 7  IOIO-BOT : Android Robotics  +3.3V ICSP MCLR/Vpp +3.3V +3.3V AVDD ENVREG VDD1 VDD2 VDD3 MCLR MCLR RB15 RB14 RB13 RB12 RB11 USBDM RG3/USBDM RB10 USBDP RG2/USBDP PIC24FJ128DA PIC24FJ256DA VBUS/RF7 VUSB +3.3V LED1 STATUS RP16/RF3 RC15 RC14 SDA3/RE7 RC13...
  • Page 8  IOIO-BOT : Android Robotics Firmware IOIO-Q Input Analog C bus Compare Peripheral Peripheral program- Output inout output input support input med pin                 ...
  • Page 9  IOIO-BOT : Android Robotics  Firmware Input Analog C bus Compare Peripheral Peripheral IOIO-Q program- Output Input output input support input med pin                ...
  • Page 10  IOIO-BOT : Android Robotics 1.1 IOIO-Q technical features IOIO-Q I/O board is compatible with the original IOIO V1.0 board. The mainly features also similar the original IOIO board. Except the supply voltage rating and some special pin layout for supporting the firmware programming with external programmer such as PICkit3 easier.Figure 1-1 shows the hardware layout of the IOIO-Q board.
  • Page 11  IOIO-BOT : Android Robotics  1.2 IOIO-Q schematic diagram Figrue 1-2 illustrates fully IOIO-Q schematic diagram. The heart of IOIO-Q is IC1 a preprogrammed IOIO firmware microcontroller; PIC24FJ128DA. The main different from the original IOIO board is power supply section. In IOIO-Q board use linear regulator circuit.
  • Page 12  IOIO-BOT : Android Robotics...
  • Page 13: Android Development Tools Installation

     IOIO-BOT : Android Robotics  Chapter 2 Android development tools installation To develop applications for Android device, developers are required to download software tools from internet to be installed on computer. Then start developing application to Android devices. The key software is as follows : 1.
  • Page 14  IOIO-BOT : Android Robotics 2.2.1.1 Java Runtime Environment (JRE) installation (1) If the computer is installed Java Runtime Environment (JRE) or Java Development Kit (JDK) already but it is an old version. Must uninstall it then restart the computer after the uninstall is complete.
  • Page 15  IOIO-BOT : Android Robotics  (3) Download the operating system used. In this example is Windows 8.1 in 64-bit. Choose to download a Windows x64. (4) Run the installation file and click on Install button to start.
  • Page 16  IOIO-BOT : Android Robotics (5) Wait until instalaltion is completed. Click on the Close button to finish. 2.2.1.2 Android Development Tools (ADT) installation (1) Download the Android Development Tools (ADT) from http://developer. android. com/sdk/index.html. Click on the Download the SDK ADT Bundle for Windows button.
  • Page 17  IOIO-BOT : Android Robotics  (2) Click the checkmark in the box I have read and agree with the above terms and conditions. Then choose the version of the operating system 32 or 64 bits. Next, click on the Download the SDK ADT Bundle for Windows button to start downloading.
  • Page 18  IOIO-BOT : Android Robotics (4) Enter the ADT software folder to open the file ; Eclipse.exe (5) Run the program. Eclipse logo will be appeared shortly. Next, the main window; Workspace Launcher is appeared. It is window that determines the development of Java applications folder to store the created files.
  • Page 19  IOIO-BOT : Android Robotics  (6) ADT program will be open with the Welcome window. It is installation completely.
  • Page 20  IOIO-BOT : Android Robotics 2.2.2 How to installation on Mac OS To install on Mac OSX Mavericks 10.9 will not install the Java Runtime Environment (JRE) because the Mac OS operating system is installed successfully. 2.2.2.1 Android Development Tools (ADT) installation (1) Download the Android Development Tools (ADT) from http://developer.android.
  • Page 21  IOIO-BOT : Android Robotics  (3) Double-click at file to extract. (4) Enter to the ADT folder. Run the Eclipse executre file.
  • Page 22  IOIO-BOT : Android Robotics (5) Run the program. Eclipse logo will be appeared shortly following the main window; Workspace Launcher is appeared. It is window that determines the development of Java applications folder to store the created files. In this example is C:\User\user\workspace.
  • Page 23: Ioio-Rab : Ioio Robotic Activity Board Introduction

    IOIO Robotic Activity Board introduction One of important component of IOIO-BOT is IOIO-RAB (IOIO Robotic Activity Board). It includes the socket for installtion IOIO or IOIO-Q board, power supply circuit, DC motor driver mini-board and Servo motor connector. This chapter describes about technical details of IOIO-RAB before go to building the IOIO-BOT in next chapter.
  • Page 24  IOIO-BOT : Android Robotics 3.1 IOIO-RAB technical features Socket for installation both IOIO and IOIO-Q. The IOIO-Q is recommended for  IOIO-BOT Left orientation photo 8 of Analog input connector in 3-pin of JST 2.00mm. type. The AN0 to AN5 input ...
  • Page 25  IOIO-BOT : Android Robotics  +5V output connector and +3.3V used from IOIO-Q board  4 of Servo motor connectors with +6V servo motor regulator circuit. They are  connected with I/O-pin45 to 48 of IOIO-Q 6 of DC motor output by using 3 of mini-TB6612 boards with motor indicators.
  • Page 26  IOIO-BOT : Android Robotics 3.2 IOIO-RAB schematic diagram and how it work Figure 3-2 illustrates the IOIO-Robotic Activity Board (IOIO-RAB) schematic diagram. It is quite simple circuit. There are 2 of +6V voltage regulator by using IC2 and IC3;...
  • Page 27  IOIO-BOT : Android Robotics  Figure 3-3 : The mini-TB6612 DC motor driver mini-board that used in IOIO-RAB for driving the DC motor. Totally are 6 channels. Low battery monitor circuit is very important in case using the Li-PO battery. If the supply voltage is below +3.5V, IC1 the battery monitor IC;...
  • Page 28 IOIO-RAB provides one of piezo speaker. It is connected with IOIO-Q I/O-pin27 via C7 capacitor In normal operation and in IOIO-BOT, user must plug the IOIO-Q board on top of IOIO-RAB. Plug the Bluetooth dongle at IOIO-Q’s USB connector. Apply the supply voltage to suitable battery connector.
  • Page 29: Buiding Ioio-Bot

    This is the first Android-controlled robotics kit. With IOIO-Q that the interface board for Android mobile device and IOIO-Robotic Activity Board (IOIO-RAB) and some mechanical parts; you can build and control the IOIO-BOT over Bluetooth or USB. The kits provides all parts and building instructions for everybody who interest to use Android mobile devices in Robotics ! The control application is free downloaded from Google Play Store.
  • Page 30  IOIO-BOT : Android Robotics 4.2 IOIO-BOT part list IOIO-Q x 1 ATX chasis x 1 Battery holder 5AA with wires x 1 IOIO-RAB x 1 Tamiya hub x 4 Spike wheels and tires x 4 BO1-48 DC motor gearbox x 4...
  • Page 31  IOIO-BOT : Android Robotics  4.3 IOIO-BOT buidling (4.3.1) Spike wheel assembly : Insert spike tire to wheel. Do all 4 sets Insert tire to wheel Insert 3x10mm. screw to hub Spike wheel and tire set (4.3.2) Fix the hub to wheel by using 3 sets of 3 10mm.
  • Page 32  IOIO-BOT : Android Robotics (4.3.3) Attach the metal angle bracket 2x3N with ATX chasis by using 8 sets of 3x6mm. screws and 3mm. nuts at the position following the picture below. The bracket is placed under the chasis and insert screw from top side through the hole of ATX chasis (4.3.4) Mount the DC motoe gearbox at each bracket.
  • Page 33  IOIO-BOT : Android Robotics  (4.3.5) Attach 2 pieces of the metal angle bracket 2 5 by using 3 6mm. screws and 3mm. nuts following the picture below. Do the same for 2 sets back 3mm. nuts 3x6mm. screws Front (4.3.6) Mount the assemblied bracket from step (4.3.5) with the DC motor gearboxes.
  • Page 34  IOIO-BOT : Android Robotics (4.3.8) Insert the spike wheel with DC motor gearbox shaft. Tighten with 2mm. tapping screw. Do all 4 wheels. (4.3.9) Insert the motor cables through the large hole beside the battery holder to the top of chasis.
  • Page 35  IOIO-BOT : Android Robotics  (4.3.11) Attach the parts from step (4.310) with the robot chasis following the picture below. The position is oppsite with standoff. Next, mount the IOIO-RAB with both brackets by using 3x10mm. screws and 3 mm. nuts (4.3.12) Connect the battery holder wires to IOIO-RAB at battery terminal.
  • Page 36  IOIO-BOT : Android Robotics (4.3.13) Put 5 of AA battery into the battery holder. Possible to use Alcaline or Rechargeable battery. However possible to use the Li-PO battery pack. If using Li-PO battery pack, connection the battery to DEAN connector is recommended.
  • Page 37 Back left motor connect with M5 output - Red pole is outside and black pole is inside. Front left motor connect with M6 output - Red pole is outside and black pole is inside. Finally, plug the IOIO-Q board on the IOIO-RAB. Now IOIO-BOT is finished and ready for working with Android device !
  • Page 38  IOIO-BOT : Android Robotics...
  • Page 39: Ioio-Bot Interface Testing With Android Device

    Chapter 5 IOIO-BOT interface testing with Android device There are 2 cases for testing the interfacing between IOIO-BOT with Android device; via USB port using the microUSB cable and wirelessly over Bluetooth 5.1 Android device preparation Whether the connection with the IOIO-BOT of Android device will be wired or wireless.
  • Page 40  IOIO-BOT : Android Robotics 5.1.2 Android 4.0 Ice Cream Sandwich or higher Enter to menu Developer options Tab to check mark at USB Debugging following the figure 5-2 Figure 5-2 : Example of how to enable the USB Debugging of the Android...
  • Page 41  IOIO-BOT : Android Robotics  5.1.3 Android OS that higher version 4.2 and cannot find the menu in step 5.1.2 Since the menu is hidden. Need to activate it by selecting Settings> About phone or tablet. Then tap the Build number 7 times. A message pops up that says the user is then developer.
  • Page 42 5.3 Interfacing Android device with IOIO-BOT wirelessly over Bluetooth (5.3.1) Plug the USB Bluetooth dongle to USB connectot of IOIO-Q on the IOIO-BOT following the figure 5-5. The Status LED will blink shortly at once. (5.3.2) At the Android device, select to menu Setting > Wireless and Networks >...
  • Page 43  IOIO-BOT : Android Robotics  Figure 5-6 : Procedure about paring the Bluetooth connection between IOIO- BOT and Android device (5.3.3) In paring the Bluetooth devices require the pairing code. It is 4545. Type this code in the box and tap OK button.
  • Page 44 (5.4.4) On Android device found the Bluetooth dongle, do not pair at thid time. Remove the Bluetooth dongle from the computer then plug to the IOIO-Q board. All steps in this section must be carried out continuously and apply the supply voltage to IOIO-BOT all the time.
  • Page 45  IOIO-BOT : Android Robotics  Figure 5-7 : Summary of steps about Android device cannot found the Bluetooth dongle troubleshooting...
  • Page 46  IOIO-BOT : Android Robotics...
  • Page 47: Ioio-Bot App For Ioio-Bot

    When used the IOIO-Q board with some mechanical parts and motor driver circuits are ideal for learning about simple robotics that control with Android devices wirelessly via Bluetooth. That is the origin of the IOIO-BOT; the robot controlled by Android device.
  • Page 48 IOIO-BOT’s motor on IOIO-Bot app 6.2 IOIO-BOT movement control by IOIO-Bot app For motor control using slider in IOIO-Bot app helps to adjust the motor’s speed easy. The center position was selected for the motor stop. The top and bottom of the chosen choose maximum speed with opposite direction.
  • Page 49 IOIO-BOT : Android Robotics  By controlling both motor operations separately, It causes many movement direction for IOIO-BOT. It also determines the speed during movement easy. See the summary of movement in figure 6-4 Figure 6-4 : IOIO-BOT movement direction control by IOIO-Bot app...
  • Page 50 IOIO-BOT : Android Robotics 6.3 IOIO-Bot application - How it work ? About the operation of IOIO-Bot app should be explain as 2 parts. One is Android device operation and IOIO-Q operation. Refer the flowchart in figure 6-5 in explanation.
  • Page 51  IOIO-BOT : Android Robotics  Figure 6-5 : IOIO-Bot app flowchart (final)
  • Page 52 100. It is duty cycle of PWM signal of motor driver. For IOIO-Q, PWM determination is 0 to 1. Then divide the value by 100. If duty cycle is 50%, the PWM value for IOIO-Q is 0.5. Figure 6-6 : Slider of motor controller image that used in the IOIO-Bot app...
  • Page 53  IOIO-BOT : Android Robotics  In case Up condition, it is stop motor. It means IOIO-BOT have to stop. The duty cycle is clear to 0. The slider position is set to center of Linear Layout. The duty cycle value is stored to dutyLeft and dutyRight variable depend on touching side of controller.
  • Page 54 Try to remove motor cable from IOIO-RAB and run again. If LED operate correct and do not work after plug the motor cable back to IOIO-BOT, It might be due to insufficient power. Check the battery or change if necessary.