CONSTRUCTION GUIDE The pendulumrobot. Robobox. Level X

Size: px
Start display at page:

Download "CONSTRUCTION GUIDE The pendulumrobot. Robobox. Level X"

Transcription

1 CONSTRUCTION GUIDE The pendulumrobot Robobox Level X

2 This box allows us to introduce a key element of modern robotics, the gyroscope accelerometer sensor. As its name suggests, this component has two parts, one calculating the angle at which our robot is (the gyroscope) and the other the accelerations and forces felt (the accelerometer). In cell phones or drones, these elements have become indispensable, we will explain here the operation. 10X male female Peaces 1x Gyroscope 1x link UNO Instructions We suggest that you follow these instructions step by step. Additional details are available on your member space on Robobox.io. Please don t hesitate to ask any question, we will answer them promptly. Good luck!

3 _0_ INTR0DUCTI0N The goal of our program is to stabilize our robot with a gyroscope. The gyroscope sends series of signals that indicate the position and movements of our robot. Unfortunately there can sometimes be "noise" in these signals, that is, inconsistencies. The received data may also degrade over time, so we will needto"smooth"thisdatawithafilter. We will finally have to adapt the power of our engine to the necessary grinding to straighten the robot. This is done through an algorithm called "PID" which we will unveil the operation. We measure the position of the robot Improved measurement of the gyroscope thanks to a filter 1 Every 10ms The difference between the current position and the ideal position is calculated2 We compare the position of the robot with respect to its equilibrium position Motors are operated in the required direction and with the correct power 3 It tells the engine to go in a certain direction (forward or backward) and at a certain power thanks to a PID algorithm

4 _1_ PROGRAMATION Programming the pendulum robot is quite demanding, so we advise you to follow step by step the steps illustrated below. Step 1 #include"i2cdev.h" #include"mpu6050.h" #if I2CDEV_IMPLEMENTATION == I2CDEV_ARDUINO_WIRE #include"wire.h" #endif #define OUTPUT_READABLE_ACCELGYRO At first we will code some instructions in the pre compiler, we have already encountered this language in the past when we introduced booksellers. The instructions for the pre compiler are preceded by a hashtag # and are all executed before the rest of the code(regardless of their position). Here, we will first introduce several libraries: I2Cdev will help us communicate through the I2C protocol. The I2C communication allows the exchange of data between two electronic devices through a two-wire connection: one transmits thetimeandtheotherthedata. Thus once the synchronization is effective both devices know what type of data is transmitted through the device. Step 2 Step 3 MPU6050 accelgyro; int16_t ax, ay, az; int16_t gx, gy, gz; floati = 0; float prev_input = 0; intpin1moteur1 = 12; intpin2moteur1 = 8; int pinpmoteur1 = 11; intpin1moteur2 = 2; int pin2moteur2 = 4; int pinpmoteur2 = 5; floatpitch = 0; long t; long t_next; long t_real; We will now create an object "MPU6050" corresponding to the gyroscope. We will then initialize 6 variables, 3 corresponding to the accelerometer (ax, ay, az) and 3 corresponding to the gyroscope (gx, gy, gz). The variable 'prev_input' is also added to this step, we will explain its usefulness later. In step 3, we finish initializing values by defining the motor variables and the pitch, which will correspond to the inclination of our robot. We also add variables t, t_next and t_real which willhelpusmanagethetimeinourprogram.

5 _1_ PROGRAMATION Step 4 voidsetup() { Wire.begin(); Serial.begin(38400); Serial.println(" Initializing the I2C com..."); accelgyro.initialize(); Serial.println(" Connection test..."); Serial.println(accelgyro.testConnection()? "Connection MPU6050 OK" : "Connection MPU6050 Failed"); pinmode(pin1motor1,output); pinmode(pin2motor1,output); pinmode(pinpmotor1,output); pinmode(pin1motor2,output); pinmode(pin2motor2,output); pinmode(pinpmotor2,output); The setup () function will essentially serve us to initialize the communication with the gyroscope and to configure our L293D component (essential to the movement of our robot). At first we start the communication with the gyroscope thanks to the '.begin ()' method of the 'wire' object. The 6th line of our setup () functionhasashapethatwe have not seen enough: objet.methode()? Text1 : Text2 This corresponds to a succinct form of: If(object.methode() == True){ Texte 1 { Texte 2 Wethendefinetheconnectionsofthecaraswehavedonesincemonth4.

6 _1_ PROGRAMATION Step 5 voidloop() { t = millis(); t_next = t+10; accelgyro.getmotion6(&ax, &ay, &az, &gx, &gy, &gz); pitch = filteredpitch(az,ax,gy,pitch); int pid_res = (int)pid(pitch); //Time Adj t_real= millis(); delay(t_next- t_real); int vit_mot = abs(pid_res); if (pid_res> 0){ dirmoteur(1,1,vit_mot); dirmoteur(2,1,vit_mot); ; if (pid_res<0){ dirmoteur(1,-1,vit_mot); dirmoteur(2,-1,vit_mot); ; Our function'loop()' is pretty basic, first we get the values of the gyroscope and the accelerometer with the method'.getmotion()'. In a second step, we transform and "filter" these raw data with the function filteredpitch(). Then we transform the filtered position into a value that defines the power and direction of the motor. This value is finally used to operate the motors. We will not review the process that allows to recover the data of the gyroscope but we will detail the other functions.

7 _1_ PROGRAMATION float filteredpitch(int AccZ, int AccX, int GyrY,float pitch){ Step 6 // Pitch by the Gyroscope floatgyryd= (float)gyry/ (131); GyrYd= (float)gyryd/ (100); floatpitchgyr = pitch -GyrYd ; // Pitch by Accelerometer float pitchacc = (180/ ) * atan2(accx,accz); // Combination of values pitch = 0.9 * pitchgyr+ 0.1* pitchacc; return pitch; ; Let's go to the explanation of the function 'filteredpitch'. We get two pieces of information, one of our acceleration and one of our gyroscope. The gyroscope gives the movement of our robot in degrees per second. The gyro gives a value of 131 for each degree per second of inclination. We must divide this value by 131 and then by 100 to convert the degrees per second to degrees per 10 milliseconds (because our loops last 10 milliseconds). The same angle is then calculated with the data of the accelerator through process is explained on the next page (180/ π converted radians in degrees). Finally these values are combined giving a different weight to each of them. Angle in /sec We combine these values to obtain a more accurate result. In addition to combining two different sources, this method makes it possible to eliminate a natural tendency of the gyroscope which is to "slide" that is to say to see its value vary without any movement.

8 x y _1_ PROGRAMATION The other information retrieved comes from the accelerometer, it measures the forces that are exerted on our robot in 3 dimensions. For this robot, we will only use two dimensions that we willcallxandy. In stable position, the only force felt is due to gravity, the weight of the robot * the constant: This force is exerted onlyin the y direction of the sensor. During a movement (t = 1) the force of gravity is carriedonboththexandyaxis. t = 0 1g We want to recover here the theta angle (θ), by reminding us some notions of trigonometry, we can determine the angle of inclination of the robot: f2 1g*sin(θ)=f2 sin(θ)=f2/1g Θ=sin-1(f2/1g) OU 1g*cos(θ)=f1 Θ=cos-1*(f1/1g) t = 1 1g f1 y The forces f1 and f2 are the accelerations of the roboton its personal mark (Xa and Ya) returned by the gyroscope. To calculate more precisely this angle we use the arc-tangant which, thanks to the value of the two vectorsf1andf2candirectlycalculatetheangleθ: 1g θ f2 θ f1 x tan(θ) = f2/f1 This calculation gives us the rotation of our robot around the axis z, axis placed in the center of the plane and which points directly towards us (not drawn)

9 _1_ PROGRAMATION Step 7 intpid(floatinput){ input = input ; //cancel the gyro bias floatkp= 250; floatki = 0; intkd=0; floatp = Kp* (float)input; I = Ki * (float)input + I; floatd = Kd* (input -prev_input); prev_input = input; intpid = (P + I + D) ; if( PID > 255 ){PID = 255; if( PID < -255 ){PID = -255; Serial.print(input); Serial.print("\t"); Serial.print(P); Serial.print("\t"); Serial.print(I); Serial.print("\t"); Serial.print(D); Serial.print("\t"); Serial.println(PID); // Serial.println("\t"); return (PID); We will describe here the operation of one of the most useful algorithms in robotics, the PID. PID stands for "Poporational / Integral / Derivative" and this algorithm is used to adapt the power of a motor to the valuesreadbyasensor. For example, for indoor automatic heating, the heating power will depend on the difference between the desired temperature (x) and the current temperature (a). The 3 components of the PID will have a different impact: - P: proportional action to the deviation(x-a) - D: Action related to the change between the last two measuredvalues(a[-1]-a) - I: action related to the sum of the measured values. These values P,Iand D willbe multipliedbyconstants Kp,Ki and Kd which will testify to the importance that we want to give to each of the parameters,theformulawillthushaveaformclosetothis: = + +

10 _1_ PROGRAMATION Ouralgorithmwillthereforerequireavalueininput,forusitwillbetheangle of inclination of our robot. Since the desired angle (the desired value x) is 0, this angle of inclination alone will represent the P value of the PID. Indeed a measured angle of10 will representadifference of10 with respect to the desiredvaluewhichis0. In our program we smooth this value by removing the bias of the gyroscope. When the robot is straight, its gyroscope is not perfectly at 0, here we had to rectify this value by subtracting 15 from our measurement. This value is found by connecting the robot to the computer and observing the measured angle when the robot is straight. The integral is obtained by simply adding the measured value to all previously measured values: I = (float)input + I; Finally, the derivative is calculated by subtracting the value measured by the previously measured value: float D = (input - prev_input); Each of these values is then multiplied by its multiplier (Kp, Ki, Kd) according to the chosen behavior. In our case we will put all K to 0 except the proportional we will initialize to 250. For more stability it is also possible to modify the Kd. These values are those that we used during our montages but yours can be different according to the state of the pile or the surface of the ground. These values are then framed to be between -255 and 255 and the values composingthepidaredetailedinatable.line: Serial.print("\t"); Indicates the column change in an array. Now it remains to insert the function of the engine which is the same as that used in the previous montages.

11 _1_ PROGRAMATION Step 8 void Forward(int speed){ dirmotor(1,1,speed); dirmotor(2,1,speed); void Backward(int speed){ dirmotor(1,-1,speed); dirmotor(2,-1,speed); void dirmotor(int motor,int sense,int percentage){ intpin1,stat1,pin2,stat2,pinp,power; if (motor==1){ pin1=pin1motor1; pin2=pin2motor1; pinp=pinpmotor1; else{ pin1=pin1motor2; pin2=pin2motor2; pinp=pinpmotor2; if (sense==1){ stat1=1; stat2=0; else if (sense==-1){ stat1=0; stat2=1; else{ stat1=0; stat2=0; power=map(percentage,0,255,50,255); analogwrite(pinp,power); digitalwrite(pin1,stat1); digitalwrite(pin2,stat2);

12 _3_ MONTAGE Step 9 Start by embedding the motors in the "Wheel Block". Step 10 Put the "Uno Card" in the "Cardholder" (CF: diagram left), then paste the "Mini- Breadboard" on the "Boardholder" (CF: diagram right). You will be able to hang these parts to the robot later. Step 11 Then insert a "Support Breadboard" equipped with its "Mini- Breadboard" on the "Frame".

13 _3_ MONTAGE Step 12 Now insert two batteries into their lockers, and snap them on the "Battery Holder x2" You can now integrate all previously mounted parts on the "Clipper Central". Step 13 Step 14 All you have to do is add the "Wheels".

14 _3_ MONTAGE Step 15 Now let's go to the connections. We already know the connections of our component L293D, the only difference is that here we will feed directly with a 9v battery. The L293D will resist because it is designed to withstand 36V and 600mA per side. But our engines only draw 300mA maximum. The second connection concerns the gyroscope. The two connections for the current (Vcc and GND) do not present any particular difficulty. The I2C connection is new. Pins A4 and A5 are connected to the SDA and SCL pins, respectively. The choice of these pins is not arbitrary, it is the Arduino pins for this type of communication. Each pin has a particular role, the SDA transmits the data while the SCL plays theroleoftheclock. The gyroscope is powered by the UNO card, itself connected to the computer. We use two circuits to limit interference between the motors, the board and the gyroscope.

15

16

17

CONSTRUCTION GUIDE Remote Big Wheel. Robobox. Level VIII

CONSTRUCTION GUIDE Remote Big Wheel. Robobox. Level VIII CONSTRUCTION GUIDE Remote Big Wheel Robobox Level VIII Remote Big Wheel In this box we will learn about an advanced use of motors and infrared emission & reception through a unique robot: the Big Wheel.

More information

Grove - 6-Axis Accelerometer&Gyroscope(BMI088)

Grove - 6-Axis Accelerometer&Gyroscope(BMI088) Grove - 6-Axis Accelerometer&Gyroscope(BMI088) The Grove - 6-Axis Accelerometer&Gyroscope(BMI088) is a 6 DoF(degrees of freedom) Highperformance Inertial Measurement Unit(IMU).This sensor is based on BOSCH

More information

#include "quaternionfilters.h" #include "MPU9250.h" data read #define SerialDebug true // Set to true to get Serial output for debugging

#include quaternionfilters.h #include MPU9250.h data read #define SerialDebug true // Set to true to get Serial output for debugging /*Hardware setup: MPU9250 Breakout --------- Arduino VDD ---------------------- 3.3V VDDI --------------------- 3.3V SDA ----------------------- A4 SCL ----------------------- A5 GND ----------------------

More information

Gravity: BMI160 6-Axis Inertial Motion Sensor SKU: SEN0250

Gravity: BMI160 6-Axis Inertial Motion Sensor SKU: SEN0250 Gravity: BMI160 6-Axis Inertial Motion Sensor SKU: SEN0250 Introduction The BMI160 6-axis inertial motion sensor is a new product from DFRobot. It is based on Bosch BMI160 6-axis MEMS sensor which integrates

More information

#define CE_PIN 12 //wireless module CE pin #define CSN_PIN 13 //wireless module CSN pin. #define angleaveragenum 1

#define CE_PIN 12 //wireless module CE pin #define CSN_PIN 13 //wireless module CSN pin. #define angleaveragenum 1 /***************************************************************************************************** define statements *****************************************************************************************************/

More information

NXShield Interface Specifications

NXShield Interface Specifications NXShield Advanced Development Guide v1.0 NXShield Interface Specifications Power Specs: NXShield can be powered from external power supply. Max Power Rating: 10.5 Volts DC Minimum 6.6 Volts DC needed to

More information

Me 3-Axis Accelerometer and Gyro Sensor

Me 3-Axis Accelerometer and Gyro Sensor Me 3-Axis Accelerometer and Gyro Sensor SKU: 11012 Weight: 20.00 Gram Description: Me 3-Axis Accelerometer and Gyro Sensor is a motion processing module. It can use to measure the angular rate and the

More information

EVShield Interface Specifications

EVShield Interface Specifications EVShield Advanced Development Guide v1.0 EVShield Interface Specifications Power Specs: EVShield can be powered from external power supply. Max Power Rating: 10.5 Volts DC Minimum 6.6 Volts DC needed to

More information

Sphero Lightning Lab Cheat Sheet

Sphero Lightning Lab Cheat Sheet Actions Tool Description Variables Ranges Roll Combines heading, speed and time variables to make the robot roll. Duration Speed Heading (0 to 999999 seconds) (degrees 0-359) Set Speed Sets the speed of

More information

Grove - 3 Axis Digital Accelerometer±16g Ultra-low Power (BMA400)

Grove - 3 Axis Digital Accelerometer±16g Ultra-low Power (BMA400) Grove - 3 Axis Digital Accelerometer±16g Ultra-low Power (BMA400) The Grove - 3-Axis Digital Accelerometer ±16g Ultra-low Power (BMA400) sensor is a 12 bit, digital, triaxial acceleration sensor with smart

More information

Sten-SLATE ESP. Accelerometer and I2C Bus

Sten-SLATE ESP. Accelerometer and I2C Bus Sten-SLATE ESP Accelerometer and I2C Bus Stensat Group LLC, Copyright 2016 I2C Bus I2C stands for Inter-Integrated Circuit. It is a serial type interface requiring only two signals, a clock signal and

More information

MAE106 Laboratory Exercises Lab # 1 - Laboratory tools

MAE106 Laboratory Exercises Lab # 1 - Laboratory tools MAE106 Laboratory Exercises Lab # 1 - Laboratory tools University of California, Irvine Department of Mechanical and Aerospace Engineering Goals To learn how to use the oscilloscope, function generator,

More information

R&D Centre: GT Silicon Pvt Ltd 171, MIG, Awadhpuri, Block B, Lakhanpur, Kanpur (UP), India, PIN

R&D Centre: GT Silicon Pvt Ltd 171, MIG, Awadhpuri, Block B, Lakhanpur, Kanpur (UP), India, PIN MIMUscope Instruction Manual Revision 1.1 R&D Centre: GT Silicon Pvt Ltd 171, MIG, Awadhpuri, Block B, Lakhanpur, Kanpur (UP), India, PIN 208024 Tel: +91 512 258 0039 Fax: +91 512 259 6177 Email: hello@oblu.io

More information

Note. The above image and many others are courtesy of - this is a wonderful resource for designing circuits.

Note. The above image and many others are courtesy of   - this is a wonderful resource for designing circuits. Robotics and Electronics Unit 2. Arduino Objectives. Students will understand the basic characteristics of an Arduino Uno microcontroller. understand the basic structure of an Arduino program. know how

More information

DE2.3 Electronics 2. Lab Experiment 3: IMU and OLED Display

DE2.3 Electronics 2. Lab Experiment 3: IMU and OLED Display Objectives Dyson School of Design Engineering DE2.3 Electronics 2 Lab Experiment 3: IMU and OLED Display (webpage: http://www.ee.ic.ac.uk/pcheung/teaching/de2_ee/) By the end of this experiment, you should

More information

ITG-3200 Hookup Guide

ITG-3200 Hookup Guide Page 1 of 9 ITG-300 Hookup Guide Introduction This is a breakout board for InvenSense s ITG-300, a groundbreaking triple-axis, digital output gyroscope. The ITG-300 features three 16-bit analog-to-digital

More information

Laboratory 1 Introduction to the Arduino boards

Laboratory 1 Introduction to the Arduino boards Laboratory 1 Introduction to the Arduino boards The set of Arduino development tools include µc (microcontroller) boards, accessories (peripheral modules, components etc.) and open source software tools

More information

MAG3110 Magnetometer Hookup Guide

MAG3110 Magnetometer Hookup Guide MAG3110 Magnetometer Hookup Guide CONTRIBUTORS: AGLASS0FMILK FAVORITE 0 Introduction The SparkFun MAG3110 Triple Axis Magnetometer is a breakout board for the 3-axis magnetometer from NXP/Freescale. It

More information

LIS3DH Hookup Guide. Introduction. SparkFun Triple Axis Accelerometer Breakout - LIS3DH SEN Required Materials

LIS3DH Hookup Guide. Introduction. SparkFun Triple Axis Accelerometer Breakout - LIS3DH SEN Required Materials Page 1 of 15 LIS3DH Hookup Guide Introduction The LIS3DH is a triple axis accelerometer you can use to add translation detection to your project. It would be classified as a 3DoF, or 3 Degrees of Freedom.

More information

2-Axis Brushless Gimbal User Manual

2-Axis Brushless Gimbal User Manual 2-Axis Brushless Gimbal User Manual I Introduction AGM 2-axis brushless gimbal is designed to accommodate the GoPro Hero3 camera, enhancing such various aspects of aerial videography as entertainment,

More information

DriftLess Technology to improve inertial sensors

DriftLess Technology to improve inertial sensors Slide 1 of 19 DriftLess Technology to improve inertial sensors Marcel Ruizenaar, TNO marcel.ruizenaar@tno.nl Slide 2 of 19 Topics Problem, Drift in INS due to bias DriftLess technology What is it How it

More information

Digital Design W/S Arduino 101 Bluetooth Interfacing

Digital Design W/S Arduino 101 Bluetooth Interfacing Digital Design W/S Arduino 101 Bluetooth Interfacing Tom Moxon @PatternAgents Instructions on Hackster.Io https://www.hackster.io/moxbox/arduino101bluetooth-interfacing-3fc2bc source: PatternAgents Arduino101

More information

Fully Integrated Thermal Accelerometer MXC6225XU

Fully Integrated Thermal Accelerometer MXC6225XU Powerful Sensing Solutions for a Better Life Fully Integrated Thermal Accelerometer MXC6225XU Document Version 1.0 page 1 Features General Description Fully Integrated Thermal Accelerometer X/Y Axis, 8

More information

Arduino Uno. Power & Interface. Arduino Part 1. Introductory Medical Device Prototyping. Digital I/O Pins. Reset Button. USB Interface.

Arduino Uno. Power & Interface. Arduino Part 1. Introductory Medical Device Prototyping. Digital I/O Pins. Reset Button. USB Interface. Introductory Medical Device Prototyping Arduino Part 1, http://saliterman.umn.edu/ Department of Biomedical Engineering, University of Minnesota Arduino Uno Power & Interface Reset Button USB Interface

More information

Introduction to Internet of Things Prof. Sudip Misra Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur

Introduction to Internet of Things Prof. Sudip Misra Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Introduction to Internet of Things Prof. Sudip Misra Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Lecture - 23 Introduction to Arduino- II Hi. Now, we will continue

More information

2011 FIRST Robotics Competition Sensor Manual

2011 FIRST Robotics Competition Sensor Manual 2011 FIRST Robotics Competition Sensor Manual The 2011 FIRST Robotics Competition (FRC) sensors are outlined in this document. It is being provided as a courtesy, and therefore does not supersede any information

More information

PID Controller application in robotics. Victor Abreu A /5/2013. Executive Summary:

PID Controller application in robotics. Victor Abreu A /5/2013. Executive Summary: PID Controller application in robotics Victor Abreu A42379353 4/5/2013 Executive Summary: The proportional integral derivative controller is a generic control loop feedback mechanism that is widely used

More information

Inertial Measurement Units I!

Inertial Measurement Units I! ! Inertial Measurement Units I! Gordon Wetzstein! Stanford University! EE 267 Virtual Reality! Lecture 9! stanford.edu/class/ee267/!! Lecture Overview! coordinate systems (world, body/sensor, inertial,

More information

Explorer V1.20. Features

Explorer V1.20. Features V1.20 Multi-function USB I/O Expander and Controller Features Dual h-bridge 1.3A motor drive with PWM speed control 4.6V to 10.8V input range USB communication 4x digital inputs 2x analogue inputs 7x 100mA

More information

Digital Design W/S Arduino 101 Bluetooth Interfacing

Digital Design W/S Arduino 101 Bluetooth Interfacing Digital Design W/S Arduino 101 Bluetooth Interfacing Tom Moxon @PatternAgents Intros PDX Hackerspace Jon and Melinda Please donate to help support the Hackerspace, and ask them if you are interested in

More information

Ardusat Space Kits in the Classroom

Ardusat Space Kits in the Classroom Ardusat Space Kits in the Classroom Resources Why Arduino platform? Real-world STEM application Space Kit contents Let s get started!! Activity1BasicBlink & Activity2MorseCode Activity3LuminTSL2561 Activity4A_TMP102

More information

Low-Cost IMU Implementation via Sensor Fusion Algorithms in the. Arduino Environment

Low-Cost IMU Implementation via Sensor Fusion Algorithms in the. Arduino Environment Low-Cost IMU Implementation via Sensor Fusion Algorithms in the Arduino Environment A Senior Project Presented to the Faculty of the Aerospace Engineering Department California Polytechnic State University,

More information

Studuino Block Programming Environment Guide

Studuino Block Programming Environment Guide Studuino Block Programming Environment Guide [DC Motors and Servomotors] This is a tutorial for the Studuino Block programming environment. As the Studuino programming environment develops, these instructions

More information

Gamma sensor module GDK101

Gamma sensor module GDK101 Application Note: Interfacing with Arduino over I 2 C The Arduino makes an ideal platform for prototyping and data collection with the Gamma sensors. Electrical Connections Interfacing with the sensor

More information

Robotics/Electronics Review for the Final Exam

Robotics/Electronics Review for the Final Exam Robotics/Electronics Review for the Final Exam Unit 1 Review. 1. The battery is 12V, R1 is 400 ohms, and the current through R1 is 20 ma. How many ohms is R2? ohms What is the voltage drop across R1? V

More information

ROBOTLINKING THE POWER SUPPLY LEARNING KIT TUTORIAL

ROBOTLINKING THE POWER SUPPLY LEARNING KIT TUTORIAL ROBOTLINKING THE POWER SUPPLY LEARNING KIT TUTORIAL 1 Preface About RobotLinking RobotLinking is a technology company focused on 3D Printer, Raspberry Pi and Arduino open source community development.

More information

FURUNO GNSS Receiver. Dead Reckoning Solution User s Guide

FURUNO GNSS Receiver. Dead Reckoning Solution User s Guide FURUNO GNSS Receiver erideopus 6/ erideopus 7 Model GV-8620/ GV-8720 Dead Reckoning Solution User s Guide (Document No. ) *The Dead Reckoning solution is exclusive for the BOSCH SMI130 sensor users. www.furuno.com

More information

Metro Minimalist Clock

Metro Minimalist Clock Metro Minimalist Clock Created by John Park Last updated on 2018-08-22 04:01:22 PM UTC Guide Contents Guide Contents Overview For this build you'll need: Clock Circuit Code the Clock Display the Clock

More information

Keyes Player Mini MP3 Module. (Red & Environmental-protection)

Keyes Player Mini MP3 Module. (Red & Environmental-protection) Keyes Player Mini MP3 Module (Red & Environmental-protection) 1. Introduction It is an affordable small MP3 module that can directly be connected to the speaker. The module can be used alone with the power

More information

Digital Speed Controller User Manual

Digital Speed Controller User Manual Diesel Engine for Generators Digital Speed Controller User Manual (DSC-1000) Ver_1.0 Doosan Infracore 페이지 1 / 36 Contents 1. Product Overview and General Specification 1.1 Product Information 1.2 Product

More information

This is the Arduino Uno: This is the Arduino motor shield: Digital pins (0-13) Ground Rail

This is the Arduino Uno: This is the Arduino motor shield: Digital pins (0-13) Ground Rail Reacting to Sensors In this tutorial we will be going over how to program the Arduino to react to sensors. By the end of this workshop you will have an understanding of how to use sensors with the Arduino

More information

EV3 Programming Workshop for FLL Coaches

EV3 Programming Workshop for FLL Coaches EV3 Programming Workshop for FLL Coaches Tony Ayad 2017 Outline This workshop is intended for FLL coaches who are interested in learning about Mindstorms EV3 programming language. Programming EV3 Controller

More information

Use the Grid-EYE click to detect absolute surface temperature without any contact. Or use it to detect the movement of people and objects.

Use the Grid-EYE click to detect absolute surface temperature without any contact. Or use it to detect the movement of people and objects. Grid-EYE click PID: MIKROE-2539 Weight: 30 g Grid-EYE click is a 8x8 thermal array sensor-detector that carries the AMG8853 infrared array sensor from Panasonic. The click is designed to run on either

More information

Modern Robotics Inc. Sensor Documentation

Modern Robotics Inc. Sensor Documentation Sensor Documentation Version 1.0.1 September 9, 2016 Contents 1. Document Control... 3 2. Introduction... 4 3. Three-Wire Analog & Digital Sensors... 5 3.1. Program Control Button (45-2002)... 6 3.2. Optical

More information

T-SERIES INDUSTRIAL INCLINOMETER ANALOG INTERFACE

T-SERIES INDUSTRIAL INCLINOMETER ANALOG INTERFACE T-SERIES INDUSTRIAL INCLINOMETER ANALOG INTERFACE T-Series industrial inclinometers are compact high performance sensors used to determine inclination in roll and pitch axes with excellent precision and

More information

A Simple Introduction to Omni Roller Robots (3rd April 2015)

A Simple Introduction to Omni Roller Robots (3rd April 2015) A Simple Introduction to Omni Roller Robots (3rd April 2015) Omni wheels have rollers all the way round the tread so they can slip laterally as well as drive in the direction of a regular wheel. The three-wheeled

More information

TMP36 Temperature Sensor

TMP36 Temperature Sensor TMP36 Temperature Sensor Created by Ladyada Last updated on 2013-07-30 05:30:36 PM EDT Guide Contents Guide Contents 2 Overview 3 Some Basic Stats 4 These stats are for the temperature sensor in the Adafruit

More information

EGG 101L INTRODUCTION TO ENGINEERING EXPERIENCE

EGG 101L INTRODUCTION TO ENGINEERING EXPERIENCE EGG 101L INTRODUCTION TO ENGINEERING EXPERIENCE LABORATORY 10: DIGITAL COMPASS DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING UNIVERSITY OF NEVADA, LAS VEGAS OVERVIEW This is a breakout board for Honeywell's

More information

ECV ecompass Series. Technical Brief. Rev A. Page 1 of 8. Making Sense out of Motion

ECV ecompass Series. Technical Brief. Rev A. Page 1 of 8. Making Sense out of Motion Technical Brief The ECV ecompass Series provides stable azimuth, pitch, and roll measurements in dynamic conditions. An enhanced version of our ECG Series, the ECV includes a full suite of precision, 3-axis,

More information

Program your face off

Program your face off Program your face off Game plan Basics of Programming Primitive types, loops, and conditionals. What is an Object oriented language? Tips and tricks of WPIlib Iterative and Command Based robots Feedback

More information

CENG4480 Embedded System Development and Applications The Chinese University of Hong Kong Laboratory 6: IMU (Inertial Measurement Unit)

CENG4480 Embedded System Development and Applications The Chinese University of Hong Kong Laboratory 6: IMU (Inertial Measurement Unit) CENG4480 Embedded System Development and Applications The Chinese University of Hong Kong Laboratory 6: IMU (Inertial Measurement Unit) Student ID: 2018 Fall 1 Introduction In this exercise you will learn

More information

SP-7 AHRS. Firmware upgrade instructions. Installation and calibration

SP-7 AHRS. Firmware upgrade instructions. Installation and calibration SP-7 AHRS Firmware upgrade instructions Installation and calibration General This document describes the firmware upgrade procedure and new functionality of the SP-7 Firmware release. The firmware upgrade

More information

Rocky Coach s Notes. Grace Montagnino, Vienna Scheyer November 8, 2018

Rocky Coach s Notes. Grace Montagnino, Vienna Scheyer November 8, 2018 Rocky Coach s Notes Grace Montagnino, Vienna Scheyer November 8, 2018 1 Introduction We used an inverted pendulum model to train our rocky (an inverted pendulum robot) to stand in place, and sprint 20

More information

Make your own secret locking mechanism to keep unwanted guests out of your space!

Make your own secret locking mechanism to keep unwanted guests out of your space! KNOCK LOCK Make your own secret locking mechanism to keep unwanted guests out of your space! Discover : input with a piezo, writing your own functions Time : 1 hour Level : Builds on projects : 1,,3,4,5

More information

TMP36 Temperature Sensor

TMP36 Temperature Sensor TMP36 Temperature Sensor Created by lady ada Last updated on 2017-11-26 10:17:46 PM UTC Guide Contents Guide Contents Overview Some Basic Stats How to Measure Temperature Problems you may encounter with

More information

Triple Axis Accelerometer FXLN83XX Series

Triple Axis Accelerometer FXLN83XX Series Triple Axis Accelerometer FXLN83XX Series Introduction 3-Axis acceleration sensor is an electronic equipment which could measure the acceleration during the object motion. It could help you to analyse

More information

This tutorial will show you how to take temperature readings using the Freetronics temperature sensor and an Arduino Uno.

This tutorial will show you how to take temperature readings using the Freetronics temperature sensor and an Arduino Uno. This tutorial will show you how to take temperature readings using the Freetronics temperature sensor and an Arduino Uno. Note that there are two different module types: the temperature sensor module and

More information

Arduino 101 AN INTRODUCTION TO ARDUINO BY WOMEN IN ENGINEERING FT T I NA A ND AW E S O ME ME NTO R S

Arduino 101 AN INTRODUCTION TO ARDUINO BY WOMEN IN ENGINEERING FT T I NA A ND AW E S O ME ME NTO R S Arduino 101 AN INTRODUCTION TO ARDUINO BY WOMEN IN ENGINEERING FT T I NA A ND AW E S O ME ME NTO R S Overview Motivation Circuit Design and Arduino Architecture Projects Blink the LED Switch Night Lamp

More information

BaseCam 1.0 board Manual

BaseCam 1.0 board Manual 1 BaseCam 1.0 board Manual Introduction The BaseCam system is a simple way to create a powerful stabilization for small and medium cameras used on small remote controlled aircraft or in other applications

More information

keyestudio Keyestudio MEGA 2560 R3 Board

keyestudio Keyestudio MEGA 2560 R3 Board Keyestudio MEGA 2560 R3 Board Introduction: Keyestudio Mega 2560 R3 is a microcontroller board based on the ATMEGA2560-16AU, fully compatible with ARDUINO MEGA 2560 REV3. It has 54 digital input/output

More information

Skill Level: Beginner

Skill Level: Beginner ADXL345 Quickstart Guide by zaggrad January 10, 2011 Skill Level: Beginner Description: The ADXL345 is a small, thin, low power, 3-axis accelerometer with high resolution (13-bit) measurement at up to

More information

Mio- x AHRS. Attitude and Heading Reference System. Engineering Specifications

Mio- x AHRS. Attitude and Heading Reference System. Engineering Specifications General Description Mio- x AHRS Attitude and Heading Reference System Engineering Specifications Rev. G 2012-05-29 Mio-x AHRS is a tiny sensormodule consists of 9 degree of freedom motion sensors (3 accelerometers,

More information

Motor Module Arduino API Manual

Motor Module Arduino API Manual Motor Module Arduino API Manual Renesas Electronics Corporation Revision History Rev. Date of issue 1.0 March 31, 2015 First edition 1.1 July 1, 2015 Updats controlinit(), sample programs and serial specifications.

More information

Serial.begin ( ); Serial.println( ); analogread ( ); map ( );

Serial.begin ( ); Serial.println( ); analogread ( ); map ( ); Control and Serial.begin ( ); Serial.println( ); analogread ( ); map ( ); A system output can be changed through the use of knobs, motion, or environmental conditions. Many electronic systems in our world

More information

Centroid Principles. Object s center of gravity or center of mass. Graphically labeled as

Centroid Principles. Object s center of gravity or center of mass. Graphically labeled as Centroids Centroid Principles Object s center of gravity or center of mass. Graphically labeled as Centroid Principles Point of applied force caused by acceleration due to gravity. Object is in state of

More information

Circuit Playground Slouch Detector

Circuit Playground Slouch Detector Circuit Playground Slouch Detector Created by Carter Nelson Last updated on 2017-11-30 07:17:17 PM UTC Guide Contents Guide Contents Overview Required Parts Optional Parts Before Starting Circuit Playground

More information

Exam in DD2426 Robotics and Autonomous Systems

Exam in DD2426 Robotics and Autonomous Systems Exam in DD2426 Robotics and Autonomous Systems Lecturer: Patric Jensfelt KTH, March 16, 2010, 9-12 No aids are allowed on the exam, i.e. no notes, no books, no calculators, etc. You need a minimum of 20

More information

EXPERIMENT 7 Please visit https://www.arduino.cc/en/reference/homepage to learn all features of arduino before you start the experiments

EXPERIMENT 7 Please visit https://www.arduino.cc/en/reference/homepage to learn all features of arduino before you start the experiments EXPERIMENT 7 Please visit https://www.arduino.cc/en/reference/homepage to learn all features of arduino before you start the experiments TEMPERATURE MEASUREMENT AND CONTROL USING LM35 Purpose: To measure

More information

9 Degrees of Freedom Inertial Measurement Unit with AHRS [RKI-1430]

9 Degrees of Freedom Inertial Measurement Unit with AHRS [RKI-1430] 9 Degrees of Freedom Inertial Measurement Unit with AHRS [RKI-1430] Users Manual Robokits India info@robokits.co.in http://www.robokitsworld.com Page 1 This 9 Degrees of Freedom (DOF) Inertial Measurement

More information

EK307 Lab: Microcontrollers

EK307 Lab: Microcontrollers EK307 Lab: Microcontrollers Laboratory Goal: Program a microcontroller to perform a variety of digital tasks. Learning Objectives: Learn how to program and use the Atmega 323 microcontroller Suggested

More information

Grove - I2C Thermocouple Amplifier (MCP9600)

Grove - I2C Thermocouple Amplifier (MCP9600) Grove - I2C Thermocouple Amplifier (MCP9600) The Grove - I2C Thermocouple Amplifier (MCP9600) is a thermocouple-to-digital converter with integrated cold-junction and I2C communication protocol. This module

More information

Navigational Aids 1 st Semester/2007/TF 7:30 PM -9:00 PM

Navigational Aids 1 st Semester/2007/TF 7:30 PM -9:00 PM Glossary of Navigation Terms accelerometer. A device that senses inertial reaction to measure linear or angular acceleration. In its simplest form, it consists of a case-mounted spring and mass arrangement

More information

EE 267 Virtual Reality Course Notes: 3-DOF Orientation Tracking with IMUs

EE 267 Virtual Reality Course Notes: 3-DOF Orientation Tracking with IMUs EE 67 Virtual Reality Course Notes: 3-DOF Orientation Tracking with IMUs Gordon Wetzstein gordon.wetzstein@stanford.edu Updated on: September 5, 017 This document serves as a supplement to the material

More information

KNOCK LOCK MAKE YOUR OWN SECRET LOCKING MECHANISM TO KEEP UNWANTED GUESTS OUT OF YOUR SPACE! Discover: input with a piezo, writing your own functions

KNOCK LOCK MAKE YOUR OWN SECRET LOCKING MECHANISM TO KEEP UNWANTED GUESTS OUT OF YOUR SPACE! Discover: input with a piezo, writing your own functions 125 KNOCK LOCK MAKE YOUR OWN SECRET LOCKING MECHANISM TO KEEP UNWANTED GUESTS OUT OF YOUR SPACE! Discover: input with a piezo, writing your own functions Time: 1 HOUR Level: Builds on projects: 1, 2, 3,

More information

CHARACTERIZATION AND CALIBRATION OF MEMS INERTIAL MEASUREMENT UNITS

CHARACTERIZATION AND CALIBRATION OF MEMS INERTIAL MEASUREMENT UNITS CHARACTERIZATION AND CALIBRATION OF MEMS INERTIAL MEASUREMENT UNITS ökçen Aslan 1,2, Afşar Saranlı 2 1 Defence Research and Development Institute (SAE), TÜBİTAK 2 Dept. of Electrical and Electronics Eng.,

More information

INDUSTRIAL INCLINOMETER SAE J1939 INTERFACE

INDUSTRIAL INCLINOMETER SAE J1939 INTERFACE The industrial inclinometers are compact solutions for determining the inclination in both single and dual axes with remarkable precision and at a lower expense. The molded housing provides the mechanical

More information

Gravity: I2C ADS Bit ADC Module(Arduino & Raspberry Pi Compatible) SKU: DFR0553

Gravity: I2C ADS Bit ADC Module(Arduino & Raspberry Pi Compatible) SKU: DFR0553 Gravity: I2C ADS1115 16-Bit ADC Module(Arduino & Raspberry Pi Compatible) SKU: DFR0553 DFRobot I2C ADS1115 16-bit ADC module can accurately collect and convert analog signals. Through this ADC module,

More information

Electronics Design Contest 2016 Wearable Controller VLSI Category Participant guidance

Electronics Design Contest 2016 Wearable Controller VLSI Category Participant guidance Electronics Design Contest 2016 Wearable Controller VLSI Category Participant guidance June 27, 2016 Wearable Controller is a wearable device that can gather data from person that wears it. Those data

More information

OOB (1) Detection Module, With I 2 C Interface Accelerometer

OOB (1) Detection Module, With I 2 C Interface Accelerometer OOB (1) Detection Module, With I 2 C Interface Accelerometer MXC62020GMW FEATURES Small package: 28.6mm X 15mm X 9mm High resolution rated at 1 milli-g Fast I2C slave (400 KHz.) mode interface 1.8V compatible

More information

Camera Drones Lecture 2 Control and Sensors

Camera Drones Lecture 2 Control and Sensors Camera Drones Lecture 2 Control and Sensors Ass.Prof. Friedrich Fraundorfer WS 2017 1 Outline Quadrotor control principles Sensors 2 Quadrotor control - Hovering Hovering means quadrotor needs to hold

More information

Lab 01 Arduino 程式設計實驗. Essential Arduino Programming and Digital Signal Process

Lab 01 Arduino 程式設計實驗. Essential Arduino Programming and Digital Signal Process Lab 01 Arduino 程式設計實驗 Essential Arduino Programming and Digital Signal Process Arduino Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's

More information

Mathematics (www.tiwariacademy.com)

Mathematics (www.tiwariacademy.com) () Miscellaneous Exercise on Chapter 10 Question 1: Find the values of k for which the line is (a) Parallel to the x-axis, (b) Parallel to the y-axis, (c) Passing through the origin. Answer 1: The given

More information

MAKEVMA208 3-AXIS DIGITAL ACCELERATION SENSOR MODULE - MMA8452 USER MANUAL

MAKEVMA208 3-AXIS DIGITAL ACCELERATION SENSOR MODULE - MMA8452 USER MANUAL 3-AXIS DIGITAL ACCELERATION SENSOR MODULE - MMA8452 USER MANUAL USER MANUAL 1. Introduction To all residents of the European Union Important environmental information about this product This symbol on

More information

ADC to I 2 C. Data Sheet. 10 Channel Analog to Digital Converter. with output via I 2 C

ADC to I 2 C. Data Sheet. 10 Channel Analog to Digital Converter. with output via I 2 C Data Sheet 10 Channel Analog to Digital Converter with output via I 2 C Introduction Many microcontroller projects involve the use of sensors like Accelerometers, Gyroscopes, Temperature, Compass, Barometric,

More information

Electrically tunable large aperture lens EL TC-VIS-20D

Electrically tunable large aperture lens EL TC-VIS-20D Datasheet: EL-16-4-TC-VIS-2D Electrically tunable large aperture lens EL-16-4-TC-VIS-2D By applying an electric current to this shape changing polymer lens, its optical power is controlled within milliseconds

More information

High Performance Sonar Range Finder

High Performance Sonar Range Finder High Performance Sonar Range Finder MB1202, MB1212, MB1222, MB1232, MB1242 The I2CXL-MaxSonar-EZ series is the first MaxSonar ultrasonic sensor to feature the I2C interface. The sensors have high acoustic

More information

Clearpath Communication Protocol. For use with the Clearpath Robotics research platforms

Clearpath Communication Protocol. For use with the Clearpath Robotics research platforms Clearpath Communication Protocol For use with the Clearpath Robotics research platforms Version: 1.1 Date: 2 September 2010 Revision History Version Date Description 1.0 26 March 2010 Release 1.1 2 September

More information

Adafruit INA219 Current Sensor Breakout

Adafruit INA219 Current Sensor Breakout Adafruit INA219 Current Sensor Breakout Created by Ladyada Last updated on 2013-09-12 10:15:19 AM EDT Guide Contents Guide Contents Overview Why the High Side? How does it work? Assembly Addressing the

More information

Prototyping & Engineering Electronics Kits Basic Kit Guide

Prototyping & Engineering Electronics Kits Basic Kit Guide Prototyping & Engineering Electronics Kits Basic Kit Guide odysseyboard.com Please refer to www.odysseyboard.com for a PDF updated version of this guide. Guide version 1.0, February, 2018. Copyright Odyssey

More information

Web Site: Forums: forums.parallax.com Sales: Technical:

Web Site:   Forums: forums.parallax.com Sales: Technical: Web Site: www.parallax.com Forums: forums.parallax.com Sales: sales@parallax.com Technical: support@parallax.com Office: (916) 624-8333 Fax: (916) 624-8003 Sales: (888) 512-1024 Tech Support: (888) 997-8267

More information

Digital Pins and Constants

Digital Pins and Constants Lesson Lesson : Digital Pins and Constants Digital Pins and Constants The Big Idea: This lesson is the first step toward learning to connect the Arduino to its surrounding world. You will connect lights

More information

Introduction to Arduino (programming, wiring, and more!)

Introduction to Arduino (programming, wiring, and more!) Introduction to Arduino (programming, wiring, and more!) James Flaten, MN Space Grant Consortium with Ben Geadelmann, Austin Langford, et al. University of MN Twin Cities Aerospace Engineering and Mechanics

More information

1 in = 25.4 mm 1 m = ft g = 9.81 m/s 2

1 in = 25.4 mm 1 m = ft g = 9.81 m/s 2 ENGR 122 Section Instructor: Name: Form#: 52 Allowed materials include calculator (without wireless capability), pencil or pen. Honor Statement: On my honor, I promise that I have not received any outside

More information

RoboClaw 2x30A Dual Channel Motor Controller

RoboClaw 2x30A Dual Channel Motor Controller RoboClaw 2x30A, 34VDC Dual Channel Brushed DC Motor Controller Version 2.2 (c) 2016 Ion Motion Control. All Rights Reserved. Feature Overview: 60 Amps Peak Per Channel Channel Bridging Supported Dual Quadrature

More information

m-block By Wilmer Arellano

m-block By Wilmer Arellano m-block By Wilmer Arellano You are free: to Share to copy, distribute and transmit the work Under the following conditions: Attribution You must attribute the work in the manner specified by the author

More information

LibrePilot GCS Tutorial

LibrePilot GCS Tutorial LibrePilot GCS Tutorial BY Wirginia Tomczyk page 1 of 13 Introduction The first dron of Drone Team project use Open Pilot Copter Control (CC). It is the flight controller supported by LibrePilot firmware.

More information

1.6inch SPI Module user manual

1.6inch SPI Module user manual 1.6inch SPI Module user manual www.lcdwiki.com 1 / 10 Rev1.0 Product Description The 1.6 module is tested using the ESP8266MOD D1 Mini development board, Both the test program and the dependent libraries

More information

Overview. Multiplexor. cs281: Introduction to Computer Systems Lab02 Basic Combinational Circuits: The Mux and the Adder

Overview. Multiplexor. cs281: Introduction to Computer Systems Lab02 Basic Combinational Circuits: The Mux and the Adder cs281: Introduction to Computer Systems Lab02 Basic Combinational Circuits: The Mux and the Adder Overview The objective of this lab is to understand two basic combinational circuits the multiplexor and

More information

StenBOT Robot Kit. Stensat Group LLC, Copyright 2018

StenBOT Robot Kit. Stensat Group LLC, Copyright 2018 StenBOT Robot Kit 1 Stensat Group LLC, Copyright 2018 Legal Stuff Stensat Group LLC assumes no responsibility and/or liability for the use of the kit and documentation. There is a 90 day warranty for the

More information

Thumb Joystick Retail. Tools and parts you'll need. Things you'll want to know. How does it work? Skill Level: Beginner. by MikeGrusin March 22, 2011

Thumb Joystick Retail. Tools and parts you'll need. Things you'll want to know. How does it work? Skill Level: Beginner. by MikeGrusin March 22, 2011 Thumb Joystick Retail Skill Level: Beginner by MikeGrusin March 22, 2011 Thank you for purchasing our Thumb Joystick! Whether you're blasting aliens or driving a robot, you'll find it a very useful addition

More information