adtec kulim robocon workshop v2

Upload: kueafiq

Post on 02-Jun-2018

249 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    1/164

    ROBOCON 2008

    Workshop

    Facilitator: Ober Choo Sui HongCytron Technologies Sdn Bhd

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    2/164

    Prepared by Ober Choo

    www.cytron.com.my 2

    Presentation Outline

    Day 1

    Preparation Connector

    Power

    Motor

    Sensor

    AR40B Introduction

    Packing list

    Board Layout

    Power Supply

    Driving Motors (tires)

    Encoder

    Driving Relays

    Digital Inputs

    Analog Inputs

    General Purpose Output

    Programmer

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    3/164

    Prepared by Ober Choo

    www.cytron.com.my 3

    Presentation Outline

    Day 2

    C Programming

    C template Compile and download program

    AR40B description

    Using AR40B (programming) Brushless motor (Linix and Vexta)

    Brush motor (MD10A and MD30A)

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    4/164

    Prepared by Ober Choo

    www.cytron.com.my 4

    Presentation Outline

    Day 3 Using AR40B (programming)

    Relays (MD10A and MD30A)

    Rotary encoder

    Digital Inputs (RGB, FX301, Limit switch) Analog Inputs (Distance sensor, Ultrasonic)

    Constructing a Robocon robot Assembly robot base, body and mechanism Sensor position and calibration

    Writing program for line following

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    5/164

    Prepared by Ober Choo

    www.cytron.com.my 5

    Presentation Outline

    Day 4

    Test Run

    Line following

    Extra Mechanism

    Modes selecting

    Improvements

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    6/164

    Prepared by Ober Choo

    www.cytron.com.my 6

    Presentation Outline

    Day 5 ROBOCON discussion

    Game rules and strategies discussion

    Robot maintenance and troubleshooting

    Test run and training

    Motivation

    Q & A

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    7/164

    Prepared by Ober Choo

    www.cytron.com.my 7

    ROBOCON Msia and ABU

    ROBOCON is an annual robotic competition in Japan for many years ago, organized by NHK

    Japan. Only few country is invited to participate, Indonesia and Thailand have joined beforeyear 2002.

    In 2002, ABU decided to organize ROBOCON and invite all countries of ABU to participate.

    There will be two level of competition, Domestic and Asia Pacific.

    Host country may send two representative teams.

    Every year have different theme and rules based on the country culture and organizingcommittee.

    2002(Reach to Mount Fuji, MalaysiaMMU, ABUVietnam (at Japan).

    2003(Takraw Space Conqueror), MalaysiaUTM, ABUThailand (at Thailand).

    2004(Reunion of Separated Lover), MalaysiaUTM, ABUVietnam (at Korea).

    2005(Climb the Great Wall, Light the Holy Fire), Malaysia - UTM, ABU - Japan (at China).

    ROBOCON 2006(Building the worlds Tallest Twin Tower), MalaysiaMMU, ABUVietnam (at Malaysia).

    ROBOCON 2007(Halong Bay Discovery), MalaysiaUTM, ABUChina (at Vietnam).

    ROBOCON 2008 (Govinda), at India

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    8/164

    ROBOCON 2002

    Theme: REACH FOR THE TOP OF MT FUJ I

    Venue: Tokyo, J apanDat e: 31st August 2002

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    9/164

    ROBOCON 2003

    Theme: TAKRAW- SPACE CONQUEROR

    Venue: Bangkok, Thai l andDat e: 24t h August 2003

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    10/164

    ROBOCON 2004

    Theme: THE REUNI ON OF SEPERATED LOVER

    Venue: Seoul , Kor ea

    Dat e: 11t h Sept ember 2004

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    11/164

    ROBOCON 2005

    Theme: CLI MB THE GREAT WALL, LI GHTTHE HOLY FI RE

    Venue: Bei j i ng, Chi naDat e: 27t h August 2005

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    12/164

    ROBOCON 2006

    Theme: BUI LDI NG THE WORLD TALLEST TWI NTOWER

    Venue: Kual a Lumpur , Mal aysi aDat e: 11t h Sept ember 2006

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    13/164

    ROBOCON 2007

    Theme: HALONG BAY DI SCOVERY

    Venue: Hanoi , Vi et nam

    Dat e: 26t h August 2007

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    14/164

    ROBOCON 2008

    Theme: Govi nda

    Venue: Pune, I ndi a

    Dat e: 31st August 2008

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    15/164

    Total Development

    Process (ROBOCON)

    Strategies

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    16/164

    Prepared by Ober Choo

    www.cytron.com.my 16

    Understand Rules, discuss strategies

    Auto Machine (MCU) Manual Machine (MCU or logic)

    Divide group

    Weekly update, debugging,

    target and meeting

    Stabilizing and training

    Register and form a team

    Workshop (learn technical knowledge)

    Construct Robots, Write Program

    Preparation for Competition

    Controller, Sensor, Mechanism,

    Motor, Wheel, Battery

    Funding

    Team work

    Motivation

    Dedication

    Strategies

    Information

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    17/164

    Hardware Preparation

    Collect and Prepare all

    hardware

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    18/164

    Prepared by Ober Choo

    www.cytron.com.my 18

    Hardware and materials

    AR40B + PIC PS40B + PIC

    Vexta brushless motor + Connector

    Brush motor + Connector

    MDX0A

    Battery + Connector + Charged Rotary Encoder + Connector

    FX301 + Connector, Limit Switch + Connector

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    19/164

    Prepared by Ober Choo

    www.cytron.com.my 19

    Vexta control pin

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    20/164

    Prepared by Ober Choo

    www.cytron.com.my 20

    MDX0A control pin

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    21/164

    Prepared by Ober Choo

    www.cytron.com.my 21

    FX301 control pin

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    22/164

    Prepared by Ober Choo

    www.cytron.com.my 22

    Encoder control pin

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    23/164

    Auto and Manual

    Robot

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    24/164

    Prepared by Ober Choo

    www.cytron.com.my 24

    Auto Robots

    One operation to start. Need a controller to

    operate automatically.

    Must fit in 1000mm x1000mm zone.

    Combination of

    controller, software and

    mechanism.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    25/164

    Prepared by Ober Choo

    www.cytron.com.my 25

    Manual Robot

    Operated by human. Controller box is either

    logic or microcontroller.

    Must fit in 1000mm x1000mm zone.

    Operator and mechanism

    are the most important

    element.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    26/164

    Prepared by Ober Choo

    www.cytron.com.my 26

    Robots Basic Elements

    ControllerSensor

    Motor

    BatteryMechanism

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    27/164

    Prepared by Ober Choo

    www.cytron.com.my 27

    Line Following RobotMotors and wheels (Leg)

    Sensors (Eye)

    Controller(Brain)

    Mechanism

    Battery

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    28/164

    Prepared by Ober Choo

    www.cytron.com.my 28

    Controller

    Control a robot. Mostly automatic robot, manual robot mayhave controller to control simple routine work.

    Controller boards: (not limited to) Handy Board

    Basic Stamp Cytrons AR40B

    ComputerEmbedded PC, PC or Laptop

    Microcontroller: (not limited to)

    PIC from Microchip 6811 from Motorola

    AVR, AT89C2051 from Atmel

    Must be light weight, low powered, easy to develop, easyto learn and easy to get (availability).

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    29/164

    Prepared by Ober Choo

    www.cytron.com.my 29

    Controller

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    30/164

    Prepared by Ober Choo

    www.cytron.com.my 30

    Simple factors A system will need at least a minimum hardware to work.

    In this case, it involved electronics interface. There are 4 important points to take care:

    Voltage

    Maximum or Minimum of operating

    Analog or Digital

    Current

    Maximum or Minimum of operating (motor)

    Polarity Positive and Negative

    Short circuit

    Clearance of your circuit

    It seem simple, but these are the famous factors for those circuit that cannot

    works

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    31/164

    PIC Microcontroller

    The Brain of AR40B

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    32/164

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    33/164

    Why PIC MCU?

    Peripheral Interface Controller

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    34/164

    Prepared by Ober Choo

    www.cytron.com.my 34

    Why PIC MCU? Low cost, from RM15-RM60.

    Easy to get, you can order from Cytron, Farnell, RS and evenelectronics store.

    Less instructions.

    PDIP Packaging. MPLAB, WinPIC, C compiler, Assembler and many software

    is distributed as freeware.

    Plenty of free project and sources code from Internet.

    Easy to load program. large program memory space.

    Low cost programmer, Bootloader and Startup Kit areavailable in market.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    35/164

    Prepared by Ober Choo

    www.cytron.com.my 35

    PIC16F877A

    40 pins package (PDIP).

    35 instructions. External clock is required, maximum crystal speed is 20MHz,

    Time for 1 instruction = 200ns (Crystal=20MHz)

    8,092 14bit FLASHprogram memory, can be reprogrammed formore than 1,000 times. You can write 8092 lines of assembly codes.

    368 8bit data memory or registers (File registers).

    Interrupt capability. 33 GPIO.

    Other peripherals: 8 channel 10bit ADC, USART/I2C/SPI, 16bits & 8 bits timers/counter, PWM, Compare and Capture.

    Features: ICSP-In Circuit Serial Programming.

    Note: Refer to Data Sheet

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    36/164

    Prepared by Ober Choo

    www.cytron.com.my 36

    PIC16F877A

    PIC16F87XA datasheet pg.5

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    37/164

    Prepared by Ober Choo

    www.cytron.com.my 37

    PIC16F877As Peripherals

    Different PICs have different on-boardperipherals

    PIC16F877A common peripherals are: Digital I/O pins.

    Analog to Digital Converters (ADC) (10bit).

    Serial communications: UART (RS-232), SPI, I2C.

    Pulse Width Modulation (PWM) (10bit). Timers and counters (8 and 16bit).

    Watchdog timers, Brown out detect.

    16 8 A i

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    38/164

    Prepared by Ober Choo

    www.cytron.com.my 38

    16F877A Pins

    Diagram

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    39/164

    Prepared by Ober Choo

    www.cytron.com.my 39

    Ports (Digital I/O)

    40 pins 16F877A has 5 Ports with 33 digital I/O pins.

    Every port has 2 control registers TRISx sets whether each pin is an input or output.

    PORTx sets their output bit levels or hold input status.

    Most pins have 25mA source/sink (directly drives LEDs) What is source/sink?

    WARNING: Other peripherals SHARE pins! Example: Port A share digital I/O with Analog input

    Applications: Inputs: Digital sensor, push button (keyboard)

    Outputs: LED, Buzzer, motor driver, LCD.

    Note: Refer to Data Sheet

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    40/164

    Prepared by Ober Choo

    www.cytron.com.my 40

    TRISx and PORTx

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    41/164

    Prepared by Ober Choo

    www.cytron.com.my 41

    16F877As ADCs

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    42/164

    Prepared by Ober Choo

    www.cytron.com.my 42

    ADCs Analog Digital Converter (ADC).

    Store Analog voltage in digital value.

    ADC can operate during sleep mode. (internal RC clock)

    10bit What does 10bit means?

    Can generate an interrupt on ADC conversion done.

    Page 126.

    Applications: Audio volume control, temperature sensor, position sensor, ECG signal

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    43/164

    Prepared by Ober Choo

    www.cytron.com.my 43

    16F877As CCP

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    44/164

    Prepared by Ober Choo

    www.cytron.com.my 44

    CCP Modules

    Capture/Compare/PWM (CCP). 10bit PWM (Pulse Width Modulation) width within 8bit PWM

    period (frequency).

    Some time PWM is used to give external speed for DC

    brushless motor.

    Normally is used to control speed of DC motor.

    Applications: DAC (Digital to Analog Converter) Control speed of motor using PWM

    Generate frequency pulse for stepper motor.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    45/164

    Prepared by Ober Choo

    www.cytron.com.my 45

    PWM on PIC Registers involved:

    PR2 register: PWM period

    CCPR1L and CCP1CON:

    10-bit duty cycle

    Basic operation: Start of period

    Timer TMR2 cleared

    CCP1 pin set to high

    10-bit duty cycle latched toCCPR1H

    When TMR2 = CCPR1H

    Clear CCP1 (duty cycle over)

    When TMR2 = PR2

    New period starts

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    46/164

    Prepared by Ober Choo

    www.cytron.com.my 46

    CCP1CON Register

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    47/164

    Prepared by Ober Choo

    www.cytron.com.my 47

    16F877As Timer

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    48/164

    Prepared by Ober Choo

    www.cytron.com.my 48

    Timers

    Available in all PICs.

    May generate interrupts on timer overflow.

    Some 8bit, some 16bit, some have prescalers.

    Can use external pins as clock in/clock out(Counting encoder motor feedback).

    Warning: some peripherals share Timer resources

    PWM share Timer 2 in 16F877A. Applications:

    Encoder feedback from motor.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    49/164

    Prepared by Ober Choo

    www.cytron.com.my 49

    PIC16F877A Interrupt

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    50/164

    Batteries

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    51/164

    Prepared by Ober Choo

    www.cytron.com.my 51

    Batteries

    There are various type of battery available in the

    market.

    Depending on the application, we try to balance

    up the weight and current needed.

    The higher current capacities, the heavier battery.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    52/164

    Prepared by Ober Choo

    www.cytron.com.my 52

    Sealed Lead Acid Following are some examples of SLA:

    12V 12Ah 12V 7Ah

    6V 4Ah

    We can simply charge SLA with ordinary power supply

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    53/164

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    54/164

    Prepared by Ober Choo

    www.cytron.com.my 54

    Lithium ion Polymer (LiPo)

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    55/164

    Prepared by Ober Choo

    www.cytron.com.my 55

    Lithium ion Polymer (LiPo) Each pack is 11.1V.

    Come with different capacity (800mAh, 1800mAh) No memory effect.

    Advantages:

    Lighter than NiMH higher current capacities

    Higher discharging rate

    Drawbacks: require special charger

    Hazardous (will exploded if in-correct charging)

    Suitable for high current application.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    56/164

    Prepared by Ober Choo

    www.cytron.com.my 56

    Precautions

    Never connect both terminal of battery together. It

    will spoil the battery.

    Be careful when using or charging LiPo battery.

    Lets see video of Lipo overcharge.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    57/164

    Q & A

    Batteries

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    58/164

    Programming

    MPLABPICC Lite

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    59/164

    MICROCHIP MPLAB IDE

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    60/164

    Installation of MPLAB IDE

    PICC Lite

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    61/164

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    62/164

    Prepared by Ober Choo

    www.cytron.com.my 62

    How to use MPLAB IDE?1. Install and run the MPLAB IDE, you can see the

    screen as below.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    63/164

    Prepared by Ober Choo

    www.cytron.com.my 63

    How to use MPLAB IDE?1. Since we are using PICC Lite, please refer to

    another file for PICC Lite

    PICC Lite

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    64/164

    MPLAB IDE & PICC Lite

    Any Question???

    If no, we will proceed with

    Assembly Language and realprogramming

    AR40B

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    65/164

    AR40B

    Autonomous Robot

    Controller

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    66/164

    Prepared by Ober Choo

    www.cytron.com.my 66

    AR40B Enhanced version of AR40A.

    Utilize all 33 I/O pins of PIC. Industrial grade PCB with heavy copper material.

    On board USB programmer.

    ZIF (Zero Insert Force) socket for ease of changing PIC.

    Fully compatible for 40 pins PIC such as PIC16F877A or PIC18F452. 8 relays output with maximum current allowed up to 10 Amp to control

    4 motors in 2 directions.

    External port for 30 Amp motor driver (MD30A).

    Able to drive Oriental AXH series and LINIX series of brushless motor.

    Up to 8 digital inputs and 3 analog inputs which can be connected tovarious kinds of sensors and switches.

    3 input push button.

    15mm x 25mm expandable zone is prepared for additional circuit and

    advance application.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    67/164

    Prepared by Ober Choo

    www.cytron.com.my 67

    AR40B

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    68/164

    Prepared by Ober Choo

    www.cytron.com.my 68

    AR40B

    Going through AR40B Instruction Manual

    Power

    Driving motors

    Relays

    Rotary Encoder

    Digital Inputs Analog Inputs

    Programmer

    AR40Bs

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    69/164

    Prepared by Ober Choo

    www.cytron.com.my 69

    Pin Assignments

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    70/164

    Practical +

    Assignments

    Using AR40B

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    71/164

    Prepared by Ober Choo

    www.cytron.com.my 71

    Assignments

    Before we can operate AR40B, we mustensure it is properly connected andpowered up.

    Connect necessary components tooperate AR40B.

    Try to connect power for motor, connect

    a brushed motor, try to operate motorwith relay.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    72/164

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    73/164

    Loading Program

    On Board Programmer

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    74/164

    Programming of Robots

    components

    Controlling Brushless Motor

    Controlling Brush Motor

    Assignments

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    75/164

    Motors

    Main driver for robot

    mechanism

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    76/164

    Prepared by Ober Choo

    www.cytron.com.my 76

    AR40B - Two methods (Tires)

    Either Brush motor + MDX0A

    Or Brushless Motor (Vexta or Linix)

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    77/164

    Prepared by Ober Choo

    www.cytron.com.my 77

    Motors DC brush, DC brushless, Servo, Stepper.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    78/164

    Prepared by Ober Choo

    www.cytron.com.my 78

    Using Brushless Motor

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    79/164

    Prepared by Ober Choo

    www.cytron.com.my 79

    Vexta Brushless Motor Simple interface (logic 0V or 5V), speed output,

    driver protection, variable speedand variable gearratio.

    Each set included motor, gear, driver and manual.

    3 types of power, 50W, 30W and 15W.

    Around RM1+++.00 each set.

    Weight: 50W=1.8kg, 30W=1.0kg, 15W=0.5kg

    Maximum speed of motor = 3000 rpm

    24V

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    80/164

    Prepared by Ober Choo

    www.cytron.com.my 80

    Oriental DC Brushless Motor

    Motor Driver

    Motor

    Gear Head

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    81/164

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    82/164

    Prepared by Ober Choo

    www.cytron.com.my 82

    DC brushless Control

    START, RUN, CW and INT.VRare the 4 driver

    inputs that we normally control.

    It can be control with direct connection to PIC

    output pins (logic-5V or 0V) or switches (manualmachine).

    Note:No pull-up resistoris required.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    83/164

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    84/164

    Prepared by Ober Choo

    www.cytron.com.my 84

    DC Brushless with Switches

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    85/164

    Prepared by Ober Choo

    www.cytron.com.my 85

    DC Brushless with uC

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    86/164

    Prepared by Ober Choo

    www.cytron.com.my 86

    DC Brushless Outputs

    There are 2 outputs from DC Brushless Driver

    which can be connected to PIC for feedback(close loop control).

    Alarm Output (Pin 1) and Speed Output (Pin 2). Output drainPull-up resistoris required.

    Note: Be careful with pull-up resistor, it should

    be > 5K.

    DC Brushless

    O C i

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    87/164

    Prepared by Ober Choo

    www.cytron.com.my 87

    Outputs Connection5V

    5K-10K

    Alarm Output

    Speed Output

    Motor Driver

    Counter or

    Digital Inputs

    Microcontroller

    DC Brushless

    M S d (I l)

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    88/164

    Prepared by Ober Choo

    www.cytron.com.my 88

    Motor Speed (Internal) There are 2 options for motor speed, internal variable

    resistor voltage or external voltage. If internal speed is required, the INT.VR (Pin 8) must be

    pulled low.

    DC Brushless

    M t S d (E t l)

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    89/164

    Prepared by Ober Choo

    www.cytron.com.my 89

    Motor Speed (External)

    External speed maybe applied if the INT. VR

    is high (5V).

    The are 2 ways, either by connecting a external

    variable resistoror connect an external DCpower supply.

    DC Brushless

    M t S d (E t l)

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    90/164

    Prepared by Ober Choo

    www.cytron.com.my 90

    Motor Speed (External)

    DC Brushless

    M t S d (E t l)

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    91/164

    Prepared by Ober Choo

    www.cytron.com.my 91

    Motor Speed (External)

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    92/164

    DC Brushless

    G d T

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    93/164

    Prepared by Ober Choo

    www.cytron.com.my 93

    Gear and Torque

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    94/164

    DC Brushed Motor

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    95/164

    Prepared by Ober Choo

    www.cytron.com.my 95

    DC Brushed Motor

    Using MDX0A

    with Brush motor

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    96/164

    Prepared by Ober Choo

    www.cytron.com.my 96

    with Brush motor

    MD10A

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    97/164

    Prepared by Ober Choo

    www.cytron.com.my 97

    MD10A

    GndPWMCWRUN12V

    battery

    Motor

    MD30A

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    98/164

    Prepared by Ober Choo

    www.cytron.com.my 98

    MD30A

    MD30A

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    99/164

    Prepared by Ober Choo

    www.cytron.com.my 99

    MD30A

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    100/164

    AR40B

    Controlling Driving Motors

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    101/164

    Prepared by Ober Choo

    www.cytron.com.my 101

    Controlling Driving Motors

    Group 1Switch 1 to activate left motor, switch 2 toactivate right motor, switch 3 to stop both motor.

    Group 2Switch 1 to activate left motor withminimum speed, switch 2 to increase speed, switch 3

    to decrease speed Group 3Switch 1 to activate 2 motors, switch 2 to

    change direction (forward), switch 3 to changedirection (backward)

    Group 4Switch 1 to activate 2 motors, switch 2 tochange direction (turn left), switch 3 to changedirection (turn right).

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    102/164

    Day 2 - Completed

    We continue tomorrow morning

    sharp at 9.00 am

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    103/164

    Day 3

    Relays

    Rotary Encoder

    Digital Inputs

    Analog Inputs

    Driving brush

    motors for mechanism

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    104/164

    Prepared by Ober Choo

    www.cytron.com.my 104

    motors for mechanism

    Relays

    MD10A

    MD30A

    Relays

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    105/164

    Prepared by Ober Choo

    www.cytron.com.my 105

    Relays Allow high current application, can be a switch.

    Various combination (poles and throws), various

    activation voltage (5V, 6V, 9V, 12V, 24V),

    various size, various price.. Can be applied on logic circuit (without uC,

    manual controller box).

    Control motor direction, but not speed.

    Relays

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    106/164

    Prepared by Ober Choo

    www.cytron.com.my 106

    Relays

    Single Pole Double Throw Single Pole Single Throw

    Relays

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    107/164

    Prepared by Ober Choo

    www.cytron.com.my 107

    Relays Bottom view

    Double Pole Double ThrowSingle Pole, Double Throw

    DPDTSPDT

    How to control

    motor with Relays

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    108/164

    Prepared by Ober Choo

    www.cytron.com.my 108

    motor with Relays

    1 SPDT relay could only control 1 motor for ON

    or OFF.

    How aboutbi-directional control of motor? Must use at least 2 SPDT relays.

    Schematic of

    Relays Control Motor

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    109/164

    Prepared by Ober Choo

    www.cytron.com.my 109

    Relays Control Motor

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    110/164

    Q & A

    Motors

    Assignments

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    111/164

    Prepared by Ober Choo

    www.cytron.com.my 111

    Assignments Brushless motor activation with switch

    Brushless motor activation from sensor

    Brushless motor speed change with switch

    Brushless motor direction with switch DC brush motor with switch

    DC brush motor with sensor Using MDX0A

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    112/164

    Encoder

    Rotary encoder

    Rotary Encoder

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    113/164

    Prepared by Ober Choowww.cytron.com.my 113

    y

    Rotary Encoder

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    114/164

    Prepared by Ober Choowww.cytron.com.my 114

    y Simple interface (3 pins), 5V to 24V, 500 pulse per

    rotation, open drain output (must pull-up and can beany voltage).

    5V to 24V

    Gnd

    Signal

    Rotary Encoder

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    115/164

    Prepared by Ober Choowww.cytron.com.my 115

    y AR40B provide option to use internal encoder from

    DC brushless driver or external rotary encoder. Connected to RA4 and RC0 of PIC.

    Use counter (timer0 and timer1) to accumulate the

    pulse.

    Calculate robot distance.

    Rotary Encoder

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    116/164

    Prepared by Ober Choowww.cytron.com.my 116

    y Connecting rotary encoder to AR40B.

    Please move the jumper to EXx.

    AR40B - Assignment

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    117/164

    Prepared by Ober Choowww.cytron.com.my 117

    g

    Group 1 & 2Switch 1 to activate robot, stoprobot when encoder 2 reach 500 pulse (equal to1 rotation)

    Group 3 & 4Switch 1 to activate robot,activate MOTOR1 if encoder 1 reach 750 pulse

    ExtraUsing encoder from Vexta brushless

    motor Making interrupt for encoder

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    118/164

    Digital Inputs

    limit switch, photoelectric

    sensor, fiber optic sensor, RGB

    SensorU i f b d i f ll k

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    119/164

    Prepared by Ober Choowww.cytron.com.my 119

    Use to sense environment of robot and as input for controller to makedecision.

    Switches Limit switch

    Push button

    Detect object with touch Example: wall, gift(2004), pole(2005), block (2006), island (2007)..

    Proximity sensor CX-422 from SUNX

    FX-301 from SUNX

    Detect object with a distance without touching

    Can be used to detect color, line tracking, and also object.

    There are other type of sensor, for example: camera.

    However we must consider the ease to operate, ease to interface andavailability.

    Limit switch

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    120/164

    Prepared by Ober Choowww.cytron.com.my 120

    Normally Close

    Normally Open

    Common

    Photoelectric and

    fiber optic Sensors

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    121/164

    Prepared by Ober Choowww.cytron.com.my 121

    SUNX CX-422 Infrared Sensor

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    122/164

    Prepared by Ober Choowww.cytron.com.my 122

    Simple interface (3 pins), 12V to 24V, 80cm

    distance, open drain output (must pull-up and can beany voltage).

    Is only logic level, therefore no filterrequired.

    SUNX CX-422

    Photoelectric Sensor

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    123/164

    Prepared by Ober Choowww.cytron.com.my 123

    Can be changed to active high or active low operation.

    Adjustable sensing distance.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    124/164

    FX-301

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    125/164

    Prepared by Ober Choowww.cytron.com.my 125

    FX-301

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    126/164

    Prepared by Ober Choowww.cytron.com.my 126

    Calibration is very important if FX-301 is used

    Basic calibration will involve mounting of sensor,threshold setting and testing

    Lets see how can we calibrate it

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    127/164

    AR40B - Assignment

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    128/164

    Prepared by Ober Choowww.cytron.com.my 128

    Group 1Switch 1 to activate MOTOR1, SEN1 to

    Change direction, SEN2 to stop MOTOR1. Group 2Switch 1 to activate MOTOR2, SEN3 to

    stop MOTOR2, SEN4 to activate MOTOR3.

    Group 3Switch 1 to activate MOTOR1 andMOTOR2, SEN5 to change direction of MOTOR1,SEN6 to activate MOTOR3.

    Group 4

    Switch 1 to activate ALL MOTOR, SEN7to stop MOTOR1 and 2, also change direction ofMOTOR3 and 4, SEN8 to stop all MOTOR.

    How about ADC?ff l i

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    129/164

    Prepared by Ober Choowww.cytron.com.my 129

    AR40B offers 3 analog inputs

    Where can it be used?

    How to use it?

    Using distance sensorSh ff h d d di

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    130/164

    Prepared by Ober Choowww.cytron.com.my 130

    Sharp offer cheap and good distance sensor

    There are several models

    Sharp GP2D120 (4cm to 30cm)

    Analog output 4.5 to 5V operating voltage

    Connecting to AR40BI t t i lt d t i

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    131/164

    Prepared by Ober Choowww.cytron.com.my 131

    Important is voltage and correct pin.

    Since is 5V powered, just match the pin.

    AR40B Analog input

    +

    S

    -

    GP2D1200 4V at 30cm

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    132/164

    Prepared by Ober Choowww.cytron.com.my 132

    0.4V at 30cm

    2.8V at 4cm

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    133/164

    Lets Try

    Convert ADC to distance (cm)

    Using Ultrasonic 42kHz Ultrasonic sensor

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    134/164

    Prepared by Ober Choowww.cytron.com.my 134

    42kHz Ultrasonic sensor

    Operates from 2.5-5.5V Low 2mA supply current

    20Hz reading rate

    RS232 Serial Output - 9600bps

    Analog Output - 10mV/inch

    PWM Output - 147uS/inch

    Small, light weight module

    Connecting to AR40B

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    135/164

    Prepared by Ober Choowww.cytron.com.my 135

    AR40B Analog input

    +S

    -

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    136/164

    Lets Try

    Convert ADC to distance (inch)

    AR40B - Assignmenti h i b h h

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    137/164

    Prepared by Ober Choowww.cytron.com.my 137

    Group 1Switch 1 to activate robot, ADC1 to change the

    speed. Group 2Switch 1 to activate MOTOR1,

    If ADC2 > 2.6V, CW

    If ADC2 < 2.4V, CCW

    If 2.4V

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    138/164

    Q & A

    Sensors

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    139/164

    Day 3 - Completed

    We continue tomorrow morning

    sharp at 9.00 am

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    140/164

    Day 4

    Line Following Robot

    Sensor calibration

    Write program

    Combining all components Use AR40B to write program:

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    141/164

    Prepared by Ober Choowww.cytron.com.my 141

    Use AR40B to write program:

    Limit switch to start Brush motor Increased Brushless Motors speed slowly (time)

    Increased Brushless Motors speed base on ADC

    Change Brush Motor direction based on Limit switch

    Infrared sensor to stop Brush motor

    Encoder to stop Brushless motor

    Counter to stop DC brushless motor

    Extra: Pivot robot with limit switch status

    Constructing a Robot1 Assembly robot base body and mechanism

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    142/164

    Prepared by Ober Choowww.cytron.com.my 142

    1. Assembly robot base, body and mechanism.

    2. Sensor position and calibration

    3. Robot testing and fine tuning

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    143/164

    Line following algorithm

    Li f ll i i i t t i ROBOCON

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    144/164

    Prepared by Ober Choowww.cytron.com.my 144

    Line following is important in ROBOCON.

    Try to write a program to simulate line

    following.

    Line Following RobotMotors and wheels (Leg)

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    145/164

    Prepared by Ober Choowww.cytron.com.my 145

    Sensors (Eye)

    Controller(Brain)

    Mechanism

    BatteryHow to integrate all the componentstogether ; the controller, actuator and

    sensors?

    Line Following Robot

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    146/164

    Prepared by Ober Choowww.cytron.com.my 146

    Sensors

    Left or Middle or Right

    sensor triggered

    Controller Algorithm process theInputs / sensors reading

    Actuators Move direction based

    on algorithm written

    Line Following RobotFlow chart for 3 line sensors

    Start E d

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    147/164

    Prepared by Ober Choowww.cytron.com.my 147

    Start

    Middle

    Sensors?

    TurnLeft

    YesRight

    Sensors?

    No

    Left

    Sensors?No

    No

    Error

    End

    Turn

    RightYes

    Moving

    ForwardYes

    Assignment!

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    148/164

    g

    Write simple code for line

    following!

    Line Following Improvement Averaging sensor reading

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    149/164

    Prepared by Ober Choowww.cytron.com.my 149

    Averaging sensor reading

    Counting cross

    Apply PD control

    Combining encoder

    Mechanism Require mechanical design.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    150/164

    Prepared by Ober Choowww.cytron.com.my 150

    You are free to design, be creative! Pneumatic

    Motor actuators

    Momentum

    Spring and rubbers

    Reliability Dont stop improving your design and testing.

    Learn! Renovate! Improve! But dont copy from the othersdesign!

    Modes You can write program for several modes

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    151/164

    Prepared by Ober Choowww.cytron.com.my 151

    You can write program for several modes

    By using push button

    Write program for team A and team B

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    152/164

    Improvements

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    153/164

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    154/164

    Day 4 - Completed

    We continue tomorrow morningsharp at 9.00 am

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    155/164

    Day 5

    ROBOCON 2 8 discussion

    Robot Maintenance and Troubleshooting

    Training

    Motivation

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    156/164

    ROBOCON 2008 Discussion

    ROBOCON 2008 Game Rulesmust be very familiar and understand

    correctly

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    157/164

    Prepared by Ober Choowww.cytron.com.my 157

    correctly. Read and understand FAQ

    Ask organizer if you have any doubt

    Game strategies

    Be creative and dare to try Example, Japan, China, Malaysia and Vietnam.

    Task distribution and weekly meeting (short and serious).

    Collect information (technical and strategies).

    Plan budget wisely.

    Training, Training and Training.

    Robot Maintenance

    and Troubleshooting

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    158/164

    Prepared by Ober Choowww.cytron.com.my 158

    Robot Maintenance

    and Troubleshooting Take care your robot like your precious.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    159/164

    Prepared by Ober Choowww.cytron.com.my 159

    Create a check list for your robot. Possible reasons for non working robot:

    Power supply

    Hardware Interfacing

    Software Algorithm

    Components failure (PIC, motor, relays, sensoretc)

    Test Run and Training

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    160/164

    Prepared by Ober Choo

    www.cytron.com.my 160

    Motivation

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    161/164

    Prepared by Ober Choo

    www.cytron.com.my 161

    Objective and Mission Give your commitment to ROBOCON.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    162/164

    Prepared by Ober Choo

    www.cytron.com.my 162

    Dont stop improving your robots. No excuses.

    Show that we love Malaysia and do our best toshow other countries we are a strong country.

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    163/164

    Thank You

    Q & A

    Please!

  • 8/11/2019 ADTEC Kulim ROBOCON Workshop v2

    164/164

    Problem/s cannot be solved?

    Contact Cytron Technologies at:

    [email protected]

    Or

    Log in to our forum at

    www.cytron.com.my