Lab 3 XBees and LCDs and Accelerometers, Oh My! Part 1: Wireless Communication Using XBee Modules and the Arduino
|
|
- Cecil Dean
- 5 years ago
- Views:
Transcription
1 University of Pennsylvania Department of Electrical and Systems Engineering ESE 205 Electrical Circuits and Systems Laboratory I Lab 3 XBees and LCDs and Accelerometers, Oh My! Introduction: In the first part of this lab, you will learn how to use two XBee modules to transmit and receive information wirelessly. XBee is a brand of low-power radio transmitter/receiver based on the ZigBee digital communication protocol. First, you will program one Arduino board to transmit one byte per second through an XBee module. The other Arduino will receive the byte through an XBee module configured on the same channel as the transmitter, and it will turn a servo left or right based on the identity of the byte. Next, you will use the XBee modules to remotely control an LED on one Arduino with a photoresistor on another Arduino. This is similar to what you did in the last part of Lab 1, except this time, it s WIRELESS! In the second part of this lab, you will learn how to use a LCD (liquid crystal display) screen for text display and other interesting applications. You will first create a timer that shows a countdown and sounds a buzzer after a certain amount of time has elapsed. You will then change the pitch of a buzzer by tilting an accelerometer, while displaying the frequency of the pitch on the LCD screen. Finally, you will use the accelerometer and LCD screen to simulate a spirit-level indicator. Part 1: Wireless Communication Using XBee Modules and the Arduino Figure 1 - Transmitter and Receiver Modules
2 Goal: - To control the motion of a continuous rotation Parallax motor using Arduino communication via XBee. - To control the lighting of an LED with a photoresistor using Arduino communication via XBee. Parts Required 1. 2 Arduino Boards 2. 2 USB Cables 3. 2 XBee Shields 4. 2 XBee Modules 5. 2 Extension Shields 6. Wires 7. Photoresistor 8. Two (2) 1 k resistors 9. LED For this part of the lab, you will be paired up with another group since you must use two Arduino boards. Your group will be assigned two XBee modules and two XBee Arduino shields. Each pair of XBee modules is configured to communicate on a unique channel, so do not accidentally switch one of your XBees with another group. Remote control of a continuous rotation Parallax motor using XBee Procedure: One group (2 people) should set up the receiver (parts a through e) while the other group sets up the transmitter (parts f through g). You will switch roles for the next section. Receiver Module a. Connect the XBee Shield and set the Receiver Arduino module in USB Programming mode Connect the XBee Shield to the Arduino Board as shown in Figure 1 (or Figure 3). Remove the jumpers to set the XBee module in USB programming mode. Please do not lose the jumpers (shown below)! You will need them again in the next step. Figure 2 - Jumpers (DO NOT LOSE!)
3 Figure 3 - Arduino XBee Shield in USB Programming Mode b. Compile and download the working code to the Receiver Arduino module #include <Servo.h> const int ledpin = 13; const int servopin = 12; int incomingbyte; Servo myservo; // the pin that the LED is attached to // the pin that the +5V of servo is attached to // a variable to read incoming serial data into // create servo object to control a servo void setup() { // initialize serial communication: Serial.begin(9600); // initialize the LED pin as an output: pinmode(ledpin, OUTPUT); // initialize the SERVO pin as an output: pinmode(servopin, OUTPUT); // set servopin to +5V
4 digitalwrite(servopin, HIGH); // Pin 10 of the Arduino output is connected to the PWN input of the servo motor myservo.attach(10); void loop() { // see if there's incoming serial data: if (Serial.available() > 0) { // read the oldest byte in the serial buffer: incomingbyte = Serial.read(); // if it's a capital L (ASCII 72), turn on the LED and rotate the servo motor clockwise if (incomingbyte == 'L') { digitalwrite(ledpin, HIGH); myservo.write(0); // if it's an R (ASCII 76) turn off the LED and rotate the servo motor anti-clockwise if (incomingbyte == 'R') { digitalwrite(ledpin, LOW); myservo.write(180); d. Set the Receiver Arduino module in XBee mode Connect the jumpers to the XBee shield, as shown in Figure 4, to set it on XBee mode. This will be the receiver Arduino module.
5 Figure 4 - Arduino XBee Shield in XBee Mode e. Connect one of the Boe-Bot s servos to the receiver Arduino module as shown in Figure 5. Figure 5 - Continuous Rotation Parallax Motor Note: You are using one of the servos on your Boe-Bot platform, not the servo pictured above. Transmitter Module f. Follow step a to set the Transmitter Arduino module in USB Programming mode g. Compile and download the working code to the Transmitter Arduino module
6 void setup() { Serial.begin(9600); // initialize serial communication void loop() { Serial.print('L'); delay(1000); Serial.print('R'); delay(1000); h. Set the Transmitter Arduino module in XBee mode as in step d, by connecting the jumper wires i. Observe the rotation of the servo motor In the Arduino window containing the code for the transmitter, open the serial monitor by pressing the Serial Monitor button to the right of the Upload button. You should see alternating L s and R s appear every second. The servo motor attached to the receiver module will turn clockwise and anticlockwise based on the serial data transmitted from the transmitter module. The LED on the receiver module should blink on and off. Remote control of an LED using a photoresistor circuit and XBee Procedure: The group (2 people) that set up the receiver in the previous part should now set up the transmitter, and the group that set up the transmitter last time should set up the receiver. This part requires you to construct a circuit on both the receiving and transmitting Arduino boards. However, there is no room to fit a breadboard on the Arduino since it is occupied by the XBee shield. For this reason, we have constructed extension shields that can hold a breadboard shield, XBee shield, and LCD screen all on one shield. The only limitation is that each component occupies a number of digital I/O pins; consequently, only two components can be used at a time. In this part of the lab, you will use the extension shield to hold the XBee shield and the breadboard shield. Connect your shields as shown in Figure 6.
7 Transmitter Receiver Figure 6 - Configuration of Arduino Shields on Extension Shield Receiver Module a. Construct the circuit given by the schematic in Figure 7. Figure 7 - Receiver LED circuit b. Set the Arduino in USB Programming mode (remove jumpers) and copy the following code into your window. const int ledpin = 12; // the pin that the LED is attached to int incomingbyte; // a variable to read incoming serial data into void setup() { Serial.begin(9600); // initialize serial communication pinmode(ledpin, OUTPUT); // initialize the LED pin as an output void loop() { // see if there's incoming serial data: if (Serial.available() > 0){
8 // read the oldest value in the serial buffer: incomingbyte = Serial.read(); if(incomingbyte == 'D'){ digitalwrite(ledpin, HIGH); else if(incomingbyte == 'L'){ digitalwrite(ledpin, LOW); c. Set the Arduino in XBee mode by connecting the jumpers. Transmitter Module d. Construct the circuit given by the schematic in Figure 8. Choose any analog pin (0-5). Figure 8 - Transmitter voltage divider circuit e. Set the Arduino in USB Programming mode (remove jumpers) and upload the following code: int analogpin = ***; // change *** to the pin number you're reading from int value; void setup(){ Serial.begin(9600); // initialize serial communication void loop(){ value = analogread(analogpin); if(value >= 150){ // you may need to modify this argument Serial.print('L'); delay(500); if(value < 150){ Serial.print('D'); delay(500);
9 f. Set the Transmitter Arduino in XBee mode by connecting the jumpers. g. Demonstrate to a TA that your system works! Thinking Further Biomedical application With technology rapidly evolving, it is becoming possible for medical professionals to remotely observe and treat patients. This new form of medicine, called telemedicine, allows people in need of medical surveillance to move around comfortably at home while their physiological signals, such as heart rate, brain and muscle activity, etc., are wirelessly transmitted to a computer and sent to a medical center to be analyzed. Imagine a digital communication system consisting of two XBee modules (one transmitter and one receiver), two Arduinos, and a biomedical sensor such as an electrocardiograph (ECG), which records electrical currents associated with heart muscle activity (shown in Figure 9). The signal from the ECG is directly connected to the transmitter, which then wirelessly transmits the signal to the receiver. The data can then be transferred from the receiver onto a computer and sent to a medical center via an internet connection. With your group, briefly discuss the following: - What are some factors that might interfere with the quality of the transmitted signal? - Do you think that this could be an effective system for remote patient monitoring? - Could a similar type of system be used by a doctor to remotely treat a patient? Figure 9 - Electrocardiograph ( Part 2: Applications of LCD Screen and Accelerometer
10 Parts Required: 1. Arduino Board 2. USB Cable 3. Sound Buzzer 4. 16X2 LCD Display 5. ADXL335, 3-axis Accelerometer 6. Wires Self-Timer using the Arduino Procedure: a. Building the circuit Attach the LCD screen shield to the Arduino, and place the breadboard shield on top, as shown in Figure 10. Build the sound buzzer circuit as described in Figure 11. Figure 10 - Arduino Shield Configuration Figure 11 - Sound Buzzer Circuit 6 b. Compile and download the following working code to the Arduino Board using Arduino IDE.
11 #include <LiquidCrystal.h> // initialize the library with the numbers of the interface pins LiquidCrystal lcd(12, 11, 13, 10, 9, 8); int runtimer = 1; // true condition for timer int serialdata = 0; // false condition for serial communication int speakerpin = 6; int data = 0; // default condition void setup() { pinmode(speakerpin, OUTPUT); // set up the LCD's number of rows and columns: lcd.begin(16, 2); void loop() { // To execute timer only once if(runtimer == 1){ // Print a message to the LCD. lcd.clear(); lcd.print("timer: "); //Start timer timer(); // runs the timer code below, under void timer() runtimer = 0; lcd.nodisplay(); delay(250); // Sound Buzzer for(int duration = 0; duration < 100; duration ++){ digitalwrite(speakerpin, HIGH); delaymicroseconds(2000);
12 digitalwrite(speakerpin, LOW); delaymicroseconds(2000); lcd.display(); delay(250); void timer(){ // For loop to run the COUNT-DOWN in Seconds for(int timer = 10; timer > 0; --timer){ // Set the Cursor to the space after the display "TIMER: " if(timer >= 10) lcd.setcursor(6,0); else{ lcd.setcursor(6,0); lcd.print("0"); lcd.setcursor(7,0); // Display the COUNT-DOWN Seconds lcd.print(timer); lcd.print("s"); delay(1000); // Bring the Cursor to the initial position lcd.setcursor(0,0); lcd.clear(); lcd.print("buzzer!"); c. Self-Timer and Sound Buzzer
13 Press the RESET Button of the Arduino board, the timer will countdown from 10 seconds, as programmed. Once the timer countdown reaches 0s, the buzzer will go on and the LCD display will blink Buzzer! The program is reset every time you press the RESET Button of the Arduino board and the timer countdown begins again. d. Questions i. Can you make the timer countdown from 100 seconds? ii. Can you make the buzzer buzz only for a fixed amount of time after the timer countdown reaches 0s? Show a TA! Possibly helpful reference links: Pitch-Control Using an Accelerometer and the Arduino Procedure: a. 3-Axis Accelerometer An accelerometer is used to measure the acceleration experienced by an object. The ADXL335 (Figure 12) is adopted to measure the acceleration experienced by the object in motion with respect to the X or Y or Z axis. We will only be measuring movements to the Y axis in this lab. b. Interface the 3-Axis Accelerometer Figure 12 - ADXL335, 3-axis Accelerometer Connect the 3-Axis accelerometer to the Arduino shield as shown in Figure 13. Keep your buzzer circuit from the previous part connected.
14 Figure 13 Interfacing ADXL335, 3-Axis Accelerometer, with the Arduino Board c. Copy the following code into the Arduino IDE (the code will not compile correctly until you change *** with numbers): #include <LiquidCrystal.h> // initialize the library with the numbers of the interface pins LiquidCrystal lcd(12, 11, 13, 10, 9, 8); const int groundpin = 14; const int powerpin = 18; const int buzzerpin = 6; const int ypin = 16; // analog input pin0 -- ground // analog input pin4 -- voltage // digital input pin6 -- buzzer // analog input pin2 -- y-axis pin int yvalue; int freq; int ymin = ***; int ymax = ***; // Replace with measured minimum yvalue // Replace with measured maximum yvalue void setup() { pinmode(buzzerpin, OUTPUT); pinmode(groundpin, OUTPUT); pinmode(powerpin, OUTPUT); digitalwrite(groundpin, LOW); digitalwrite(powerpin, HIGH); // set up the LCD's number of rows and columns:
15 lcd.begin(16, 2); void loop() { yvalue = analogread(ypin); freq = map(yvalue, ymin, ymax, 100, 10000); // maps yvalue into frequency range tone(buzzerpin, freq); // sounds buzzer at given frequency lcd.clear(); lcd.setcursor(0,0); lcd.print("freq: "); lcd.print(freq); lcd.print(" Hz"); lcd.setcursor(0,1); lcd.print("yvalue: "); lcd.print(yvalue); delay(150); d. Find the range of the y-axis acceleration Find the minimum and maximum values of the y-axis acceleration (yvalue). Replace the values of ymin and ymax with the values you found. Upload the code to the Arduino and tilt the board along the y-axis to observe its effect. The map function map(value, fromlow, fromhigh, tolow, tohigh) maps a value of fromlow to tolow, a value of fromhigh to tohigh, values in-between to values in-between, etc. In this case, yvalue is converted from an acceleration value to a frequency value. To get more information about any function, right-click the function name and click Find in Reference. e. Questions i. If yvalue is 450, then what is the value of freq? ii. How would you change the range of frequencies that is swept through? iii. Can you modify the code so that change of pitch sounds more continuous? iv. Change the code so that the change in frequency correlates with acceleration on the x- axis instead of the y-axis? Show a TA!
16 Spirit-Level Indicator using the Arduino Procedure: a. Compile and download the working code to the Arduino Board: #include <LiquidCrystal.h> LiquidCrystal lcd(12, 11, 13, 10, 9, 8); const int groundpin = 14; const int powerpin = 18; const int ypin =2; // analog input pin0 -- ground // analog input pin4 -- voltage // y-axis of the accelerometer void setup() { lcd.begin(16, 2); Serial.begin(9600); pinmode(groundpin, OUTPUT); pinmode(powerpin, OUTPUT); digitalwrite(groundpin, LOW); digitalwrite(powerpin, HIGH); void loop() { int avalue = 0; int lcd_cursor_position = 0; lcd.clear(); avalue = analogread(ypin); lcd_cursor_position = 46 - avalue/13; Serial.print(avalue); // read value of the X-axis acceleration // calculation to position the lcd cursor // prints x-axis acceleration in serial monitor lcd.setcursor((15 - lcd_cursor_position), 1); lcd.print('.'); lcd.setcursor((15 - lcd_cursor_position), 0); lcd.print('.'); delay(100);
17 b. Questions: v. Make the spirit level indicator. move in the direction of the acceleration. vi. Make one spirit level indicator. move in the opposite direction to the other. Show a TA! vii. Extra Credit: Using a sound buzzer, play any musical note, if the level indicator is stationary in a particular position for more than 10 seconds. Show a TA!
Lab 4 LCDs and Accelerometers
University of Pennsylvania Department of Electrical and Systems Engineering ESE 111 Intro to Electrical/Computer/Systems Engineering Lab 4 LCDs and Accelerometers Introduction: In this lab, will learn
More informationARDUINO. By Kiran Tiwari BCT 2072 CoTS.
ARDUINO By Kiran Tiwari BCT 2072 CoTS www.kirantiwari.com.np SO What is an Arduino? WELL!! Arduino is an open-source prototyping platform based on easy-to-use hardware and software. Why Arduino? Simplifies
More informationSWITCH 10 KILOHM RESISTOR 220 OHM RESISTOR POTENTIOMETER LCD SCREEN INGREDIENTS
11 SWITCH 10 KILOHM RESISTOR 220 OHM RESISTOR POTENTIOMETER LCD SCREEN INGREDIENTS 115 CRYSTAL BALL CREATE A CRYSTAL BALL TO TELL YOUR FUTURE Discover: LCD displays, switch/case statements, random() Time:
More informationSerial.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 informationLab-3: LCDs Serial Communication Analog Inputs Temperature Measurement System
Mechatronics Engineering and Automation Faculty of Engineering, Ain Shams University MCT-151, Spring 2015 Lab-3: LCDs Serial Communication Analog Inputs Temperature Measurement System Ahmed Okasha okasha1st@gmail.com
More informationEng.mohammed Albhaisi. Lab#3 : arduino to proteus simulation. for simulate Arduino program that you wrote you have to have these programs :
Lab#3 : arduino to proteus simulation for simulate Arduino program that you wrote you have to have these programs : 1-Arduino C 2-proteus 3- Virtual Serial Port Driver 4-Arduino library to proteus You
More informationLaboratory 5 Communication Interfaces
Laboratory 5 Communication Interfaces Embedded electronics refers to the interconnection of circuits (micro-processors or other integrated circuits) with the goal of creating a unified system. In order
More informationJunying Huang Fangjie Zhou. Smartphone Locker
Junying Huang Fangjie Zhou Smartphone Locker Motivation and Concept Smartphones are making our lives more and more convenient. In addition to some basic functions like making calls and sending messages,
More informationArduino: LCD Diagrams & Code Brown County Library
Arduino: LCD Diagrams & Code Project 01: Hello, World! Components needed: Arduino Uno board breadboard 16 jumper wires 16x2 LCD screen 10k potentiometer /* LCD 01 : Hello World! Source: Code adapted from
More informationSECOND EDITION. Arduino Cookbook. Michael Margolis O'REILLY- Tokyo. Farnham Koln Sebastopol. Cambridge. Beijing
SECOND EDITION Arduino Cookbook Michael Margolis Beijing Cambridge Farnham Koln Sebastopol O'REILLY- Tokyo Table of Contents Preface xi 1. Getting Started 1 1.1 Installing the Integrated Development Environment
More information<Table of content> <Parts and description> <Circuit board Guide> <Pins> <Basics of Coding> <Intro to Arduino> <Intro> <Downloading Arduino IDO>
http://www.arduino.cc/
More informationArduino Cookbook O'REILLY* Michael Margolis. Tokyo. Cambridge. Beijing. Farnham Koln Sebastopol
Arduino Cookbook Michael Margolis O'REILLY* Beijing Cambridge Farnham Koln Sebastopol Tokyo Table of Contents Preface xiii 1. Getting Started 1 1.1 Installing the Integrated Development Environment (IDE)
More informationEP486 Microcontroller Applications
EP486 Microcontroller Applications Topic 6 Step & Servo Motors Joystick & Water Sensors Department of Engineering Physics University of Gaziantep Nov 2013 Sayfa 1 Step Motor http://en.wikipedia.org/wiki/stepper_motor
More informationFUNCTIONS USED IN CODING pinmode()
FUNCTIONS USED IN CODING pinmode() Configures the specified pin to behave either as an input or an output. See the description of digital pins for details on the functionality of the pins. As of Arduino
More information3.The circuit board is composed of 4 sets which are 16x2 LCD Shield, 3 pieces of Switch, 2
Part Number : Product Name : FK-FA1416 MULTI-FUNCTION 16x2 LCD SHIELD This is the experimental board of Multi-Function 16x2 LCD Shield as the fundamental programming about the digits, alphabets and symbols.
More informationLAMPIRAN I (LISTING PROGRAM)
LAMPIRAN I (LISTING PROGRAM) #include LiquidCrystal lcd(8, 9, 4, 5, 6, 7); const int numreadings = 10; int readings[numreadings]; // the readings from the analog input int readindex =
More informationMore Arduino Programming
Introductory Medical Device Prototyping Arduino Part 2, http://saliterman.umn.edu/ Department of Biomedical Engineering, University of Minnesota More Arduino Programming Digital I/O (Read/Write) Analog
More informationComputer Architectures
Implementing the door lock with Arduino Gábor Horváth 2017. február 24. Budapest associate professor BUTE Dept. Of Networked Systems and Services ghorvath@hit.bme.hu Outline Aim of the lecture: To show
More informationArduino Part 2. Introductory Medical Device Prototyping
Introductory Medical Device Prototyping Arduino Part 2, http://saliterman.umn.edu/ Department of Biomedical Engineering, University of Minnesota More Arduino Programming Digital I/O (Read/Write) Analog
More informationIME-100 ECE. Lab 3. Electrical and Computer Engineering Department Kettering University. G. Tewolde, IME100-ECE,
IME-100 ECE Lab 3 Electrical and Computer Engineering Department Kettering University 3-1 1. Laboratory Computers Getting Started i. Log-in with User Name: Kettering Student (no password required) ii.
More informationArduino Prof. Dr. Magdy M. Abdelhameed
Course Code: MDP 454, Course Name:, Second Semester 2014 Arduino What is Arduino? Microcontroller Platform Okay but what s a Microcontroller? Tiny, self-contained computers in an IC Often contain peripherals
More informationARDUINO EXPERIMENTS ARDUINO EXPERIMENTS
ARDUINO EXPERIMENTS IR OBSTACLE SENSOR... 3 OVERVIEW... 3 OBJECTIVE OF THE EXPERIMENT... 3 EXPERIMENTAL SETUP... 3 IR SENSOR ARDUINO CODE... 4 ARDUINO IDE SERIAL MONITOR... 5 GAS SENSOR... 6 OVERVIEW...
More informationSend commands via bluetooth, e.g. irise app for Android
/** Sunrise alarm clock Waking up with a sunrise simulation Mood light Send commands via bluetooth, e.g. irise app for Android */ command i20:45z s06:10z dz m1..9e r1z y1z zz tz kz lz bz v1e description
More informationloop switch ( ) { case STATE_INIT: // // break; case STATE_SETTING: // // break; case STATE_COUNTDOWN: // // break; case STATE_PAUSE: // // break;
2 3 4 loop switch ( ) { case STATE_IIT: break; case STATE_SETTIG: break; case STATE_COUTDOW: break; case STATE_PAUSE: break; case STATE_ALARM: break; default: break; 5 6 7 case STATE_IIT : displaytimer(time,
More information#include <Keypad.h> int datasens; #define pinsens 11. const byte ROWS = 4; //four rows const byte COLS = 3; //three columns
#include int datasens; #define pinsens 11 const byte ROWS = 4; //four rows const byte COLS = 3; //three columns char keys[rows][cols] = '1','2','3', '4','5','6', '7','8','9', '*','0','#' ; byte
More informationElectronic Brick Starter Kit
Electronic Brick Starter Kit Getting Started Guide v1.0 by Introduction Hello and thank you for purchasing the Electronic Brick Starter Pack from Little Bird Electronics. We hope that you will find learning
More informationTANGIBLE MEDIA & PHYSICAL COMPUTING MORE ARDUINO
TANGIBLE MEDIA & PHYSICAL COMPUTING MORE ARDUINO AGENDA RECAP ALGORITHMIC APPROACHES TIMERS RECAP: LAST WEEK WE DID: ARDUINO IDE INTRO MAKE SURE BOARD AND USB PORT SELECTED UPLOAD PROCESS COVERED DATATYPES
More informationUniversity of Portland EE 271 Electrical Circuits Laboratory. Experiment: Arduino
University of Portland EE 271 Electrical Circuits Laboratory Experiment: Arduino I. Objective The objective of this experiment is to learn how to use the Arduino microcontroller to monitor switches and
More informationLiquid Crystal Displays
Liquid Crystal Displays Let s investigate another popular method of displaying text and symbols, the LCD (Liquid Crystal Display). LCDs are the displays typically used in calculators and alarm clocks.
More informationDesigned & Developed By: Ms. Jasleen Kaur, PhD Scholar, CSE. Computer Science & Engineering Department
Design & Development of IOT application using Intel based Galileo Gen2 board A Practical Approach (Experimental Manual For B.Tech & M.Tech Students) For SoC and Embedded systems in association with Intel
More informationThis 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 informationArduino: Serial Monitor Diagrams & Code Brown County Library
Arduino: Serial Monitor Diagrams & Code All projects require the use of the serial monitor in your Arduino IDE program (or whatever you are using to transfer code to the Arduino). Project 01: Monitor how
More informationCreate your own wireless motion sensor with
Create your own wireless motion sensor with Arduino If you have a friend that has an alarm system in his or her home, I am sure you ve all seen these white motion sensors that are usually fixed above doors
More informationMake 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#define CE_PIN 12 //wireless module CE pin #define CSN_PIN 13 //wireless module CSN pin. #define angleaveragenum 1
/***************************************************************************************************** define statements *****************************************************************************************************/
More informationKNOCK 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 informationEXPERIMENT 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 informationArduino 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 informationIME-100 ECE. Lab 4. Electrical and Computer Engineering Department Kettering University. G. Tewolde, IME100-ECE,
IME-100 ECE Lab 4 Electrical and Computer Engineering Department Kettering University 4-1 1. Laboratory Computers Getting Started i. Log-in with User Name: Kettering Student (no password required) ii.
More informationIntroduction to Microcontrollers Using Arduino. PhilRobotics
Introduction to Microcontrollers Using Arduino PhilRobotics Objectives Know what is a microcontroller Learn the capabilities of a microcontroller Understand how microcontroller execute instructions Objectives
More informationLaboratory 3 Working with the LCD shield and the interrupt system
Laboratory 3 Working with the LCD shield and the interrupt system 1. Working with the LCD shield The shields are PCBs (Printed Circuit Boards) that can be placed over the Arduino boards, extending their
More informationArduino Uno Microcontroller Overview
Innovation Fellows Program Arduino Uno Microcontroller Overview, http://saliterman.umn.edu/ Department of Biomedical Engineering, University of Minnesota Arduino Uno Power & Interface Reset Button USB
More informationCPCS (Fall 2015), Merced College A Smart Parking Lot Dulce Meza-Flores Ashley Arredondo
CPCS-42-1737 (Fall 2015), Merced College A Smart Parking Lot Dulce Meza-Flores 0277905 Ashley Arredondo Summary This report presents the design and building process for a smart parking lot that tells the
More informationArduino Programming Part 6: LCD Panel Output
Arduino Programming Part 6: LCD Panel Output EAS 199B, Winter 2013 Gerald Recktenwald Portland State University gerry@me.pdx.edu Goals Use the 20x4 character LCD display for output Overview of assembly
More informationWeb 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 informationArduino 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 informationPrototyping & 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 informationIntroduction To Arduino
Introduction To Arduino What is Arduino? Hardware Boards / microcontrollers Shields Software Arduino IDE Simplified C Community Tutorials Forums Sample projects Arduino Uno Power: 5v (7-12v input) Digital
More information4Serial SIK BINDER //77
4Serial SIK BINDER //77 SIK BINDER //78 Serial Communication Serial is used to communicate between your computer and the RedBoard as well as between RedBoard boards and other devices. Serial uses a serial
More informationLab 8: Sensor Characterization Lab (Analog)
Objectives Lab 8: Sensor Characterization Lab (Analog) This lab introduces the methods and importance for characterizing sensors. Students will learn about how the Arduino interprets an analog signal.
More informationTABLE OF CONTENTS INTRODUCTION LESSONS PROJECTS
TABLE OF CONTENTS INTRODUCTION Introduction to Components - Maker UNO 5 - Maker UNO Board 6 - Setting Up - Download Arduino IDE 7 - Install Maker UNO Drivers - Install Maker UNO Board Package 3 LESSONS.
More informationArduino meets Android Creating Applications with Bluetooth, Orientation Sensor, Servo, and LCD
Arduino meets Android Creating Applications with Bluetooth, Orientation Sensor, Servo, and LCD Android + Arduino We will be learning Bluetooth Communication Android: built in Arduino: add on board Android
More informationWhat s inside the kit
What s inside the kit 1 set Jumper Wires 5 pcs Tact Switch 1 pc Photoresistor 1 pc 400 Points Breadboard 1 pc Potentiometer 1 pc LCD 5 pcs 5mm Red LED 5 pcs 5mm Green LED 5 pcs 5mm Yellow LED 30 pcs Resistors
More informationLaboratory 4 Usage of timers
Laboratory 4 Usage of timers 1. Timer based interrupts Beside external interrupt, the MCU responds to internal ones which are triggered by external events (on the external pins). The source of the internal
More informationAdapted from a lab originally written by Simon Hastings and Bill Ashmanskas
Physics 364 Arduino Lab 1 Adapted from a lab originally written by Simon Hastings and Bill Ashmanskas Vithayathil/Kroll Introduction Last revised: 2014-11-12 This lab introduces you to an electronic development
More informationArduino & mbed Workshop + Hackathon
Arduino & mbed Workshop + Hackathon Rob Faludi! Arduino Basics Pedro Perez! Intro to mbed Goals Explore two paths to fast programmability with our radio modules in mind Learn their strengths and weaknesses
More informationArduino: Piezo Diagrams & Code Brown County Library. Projects 01 & 02: Scale and Playing a Tune Components needed: Arduino Uno board piezo
Arduino: Piezo Diagrams & Code Projects 01 & 02: Scale and Playing a Tune Components needed: Arduino Uno board piezo /* Piezo 01 : Play a scale Code adapted from Adafruit Arduino Lesson 10 (learn.adafruit.com/adafruit-arduino-lesson-
More informationStenBOT 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 informationOverview. Exploration: LED Ramp Light. cs281: Introduction to Computer Systems Lab04 K-Maps and a Sensor/Actuator Circuit
cs281: Introduction to Computer Systems Lab04 K-Maps and a Sensor/Actuator Circuit Overview In this lab, we will use the K-maps from last lab to build a circuit for the three lights based on three bit
More information// sets the position of cursor in row and column
CODE: 1] // YES_LCD_SKETCH_10_14_12 #include //lcd(rs, E, D4, D5, D6, D7) LiquidCrystal lcd(8, 9, 4, 5, 6, 7); int numrows = 2; int numcols = 16; void setup() Serial.begin(9600); lcd.begin(numrows,
More informationSmart Wireless water level Monitoring & Pump controlling System
International Journal of Advances in Scientific Research and Engineering (ijasre) Smart Wireless water level Monitoring & Pump controlling System ABSTRACT Madhurima Santra 1, Sanjoy Biswas 2, Sibasis Bandhapadhyay
More informationThe speaker connection is circled in yellow, the button connection in red and the temperature sensor in blue
Connections While the board can be connected to a number of different Arduino versions I chose to use the Pro Mini as I wanted the completed unit to be fairly small. The Mini and the MP3 board run on 5
More informationArduino Programming and Interfacing
Arduino Programming and Interfacing Stensat Group LLC, Copyright 2017 1 Robotic Arm Experimenters Kit 2 Legal Stuff Stensat Group LLC assumes no responsibility and/or liability for the use of the kit and
More informationWorkshop Arduino English starters workshop 2
Workshop Arduino English starters workshop 2 We advice to finish part 1 of this workshop before following this one. There are a set of assignments in this workshop that can be taken individually. First
More informationROBOTLINKING 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 informationPhysical Programming with Arduino
CTA - 2014 Physical Programming with Arduino Some sample projects Arduino Uno - Arduino Leonardo look-alike The Board Arduino Uno and its cheap cousin from Borderless Electronics Mini - Breadboard typical
More informationSTEPD StepDuino Quickstart Guide
STEPD StepDuino Quickstart Guide The Freetronics StepDuino is Arduino Uno compatible, uses the ATmega328P Microcontroller and works with most Arduino software. The StepDuino can be powered automatically
More informationBloom A GADGET TO INSPIRE JOY FOR THOSE AFFECTED BY SEASONAL AFFECTIVE DISORDER. By Janine Mazur DEA 4210 Interaction Design
Bloom A GADGET TO INSPIRE JOY FOR THOSE AFFECTED BY SEASONAL AFFECTIVE DISORDER By Janine Mazur DEA 4210 Interaction Design Abstract In this project I present an idea for a gadget that emulates the season
More informationProject 2: Sensor Light
Project 2: Sensor Light In this session, we will create a sensor light. The behavior we want to implement is as follows: - When the sensor detects human motion, the LED light will be on - When no human
More informationARDUINO WORKSHOP A HANDS-ON I N T R O D U C T I O N W I T H 65 PROJECTS JOHN BOXALL
ARDUINO WORKSHOP A HANDS-ON I N T R O D U C T I O N W I T H 65 PROJECTS JOHN BOXALL I NDEX Symbols & Numbers &, 139 &&, 73 *, 84 */, 27 ==, 71!, 73!=, 71 /, 84 /*, 27 //, 27 >, 84 >=, 84 #define, 70 #include,
More informationBarry the Plant Watering Robot
Barry the Plant Watering Robot We are going to create the controller board for Barry, a robot who will do some of our plant watering chores for us. We aren t going to build all of Barry, but this will
More informationMAKE & COLLABORATE: SECRET KNOCK LOCK
MAKE & COLLABORATE: SECRET KNOCK LOCK A project from Arduino Project Handbook: 25 Practical Projects to Get You Started Project 9: Secret KnocK LocK For centuries clandestine groups have used Secret KnocKS
More informationAndyMark Arduino Tutorial
AndyMark Arduino Tutorial Tank Drive June 2014 Required: Required Software List: - Kit Arduino IDE - Robot Power Cable Kit (am-0975) RobotOpen Arduino Shield Software - Battery Base Package (am-0477) RobotOpen
More informationThe Big Idea: Background: About Serial
Lesson 6 Lesson 6: Serial Serial Input Input The Big Idea: Information coming into an Arduino sketch is called input. This lesson focuses on text in the form of characters that come from the user via the
More informationArduino Programming. Arduino UNO & Innoesys Educational Shield
Arduino Programming Arduino UNO & Innoesys Educational Shield www.devobox.com Electronic Components & Prototyping Tools 79 Leandrou, 10443, Athens +30 210 51 55 513, info@devobox.com ARDUINO UNO... 3 INNOESYS
More informationmicro:bit Lesson 2. Controlling LEDs on Breadboard
micro:bit Lesson 2. Controlling LEDs on Breadboard Created by Simon Monk Last updated on 2018-03-09 02:39:14 PM UTC Guide Contents Guide Contents Overview Parts BBC micro:bit Half-size breadboard Small
More informationRoboSpecies Technologies Pvt. Ltd.
Table of Contents Table of Contents... vi Part 1: Introduction to Robotics... 1 1.1 Robotics... 3 1.1.1 House Robots... 4 1.1.2 Industrial Robots... 4 1.1.3 Medical Robots... 6 1.1.4 Space Robots... 7
More informationModule 1: Crash Prevention Lesson 3: Weather Information systems Programming Activity Using Arduino Teacher Resource Grade 6-8 Time Required
Module 1: Crash Prevention Lesson 3: Weather Information systems Programming Activity Using Arduino Teacher Resource Grade 6-8 Time Required Weather Information Systems is a 120 minute lesson plan (90
More informationOverview. 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 informationLab 2.2 Ohm s Law and Introduction to Arduinos
Lab 2.2 Ohm s Law and Introduction to Arduinos Objectives: Get experience using an Arduino Learn to use a multimeter to measure Potential units of volts (V) Current units of amps (A) Resistance units of
More informationThis 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 informationProject 24 LCD Temperature Display
Project 24 LCD Temperature Display This project is a simple demonstration of using an LCD to present useful information to the user in this case, the temperature from an analog temperature sensor. You
More informationArduino Board Design. Nicholas Skadberg 4/30/09 EE290. Dr. Pushkin Kachroo
Arduino Board Design Nicholas Skadberg 4/30/09 EE290 Dr. Pushkin Kachroo Abstract In an effort to further understand the concept of digital control using a microprocessor, a simple serial output device
More informationTA0136 USER MANUAL ARDUINO 2 WHEEL DRIVE ULTRASONIC ROBOT KIT
TA0136 USER MANUAL ARDUINO 2 WHEEL DRIVE ULTRASONIC ROBOT KIT I Contents Overview TA0136... 1 Getting started: the 2 Wheel Drive Ultrasonic Robot Kit using Arduino UNO... 1 2.1. What is Arduino?... 1 2.2.
More informationSPLDuino Programming Guide
SPLDuino Programming Guide V01 http://www.helloapps.com http://helloapps.azurewebsites.net Mail: splduino@gmail.com HelloApps Co., Ltd. 1. Programming with SPLDuino 1.1 Programming with Arduino Sketch
More informationWEEK PRactice. Turning on LED with a Switch. Learning Objective. Materials to Prepare. Summary of Class. Project Goal. Hardware Expression
WEEK 04 Have LED My Way PRactice Turning on LED with a Switch Do you remember the project we worked on in week 3? It was a program that had making board s LED blink every second through a simple program.
More informationExperiment 4.A. Speed and Position Control. ECEN 2270 Electronics Design Laboratory 1
.A Speed and Position Control Electronics Design Laboratory 1 Procedures 4.A.0 4.A.1 4.A.2 4.A.3 4.A.4 Turn in your Pre-Lab before doing anything else Speed controller for second wheel Test Arduino Connect
More informationIntroduction to Arduino
Introduction to Arduino Paco Abad May 20 th, 2011 WGM #21 Outline What is Arduino? Where to start Types Shields Alternatives Know your board Installing and using the IDE Digital output Serial communication
More informationIntroduction to MATLABs Data Acquisition Toolbox, the USB DAQ, and accelerometers
Introduction to MATLABs Data Acquisition Toolbox, the USB DAQ, and accelerometers This week we will start to learn the software that we will use through the course, MATLAB s Data Acquisition Toolbox. This
More informationArduino 07 ARDUINO WORKSHOP 2007
ARDUINO WORKSHOP 2007 PRESENTATION WHO ARE WE? Markus Appelbäck Interaction Design program at Malmö University Mobile networks and services Mecatronics lab at K3, Malmö University Developer, Arduino community
More informationACKNOWLEDGEMENT. Sagar Agrawal Parikshit jha Apar Sinha Gaurav Chauhan
ACKNOWLEDGEMENT Sagar Agrawal- 9913103669 Parikshit jha- 913103540 Apar Sinha- 9913103567 Gaurav Chauhan- 9913103672 Tables of content Topics Pages Abstract 4,5 Introduction 6 Components Description 7-10
More informationGrove - Buzzer. Introduction. Features
Grove - Buzzer Introduction The Grove - Buzzer module has a piezo buzzer as the main component. The piezo can be connected to digital outputs, and will emit a tone when the output is HIGH. Alternatively,
More informationIME-100 Interdisciplinary Design and Manufacturing
IME-100 Interdisciplinary Design and Manufacturing Introduction Arduino and Programming Topics: 1. Introduction to Microprocessors/Microcontrollers 2. Introduction to Arduino 3. Arduino Programming Basics
More informationObjectives: Learn how to input and output analogue values Be able to see what the Arduino is thinking by sending numbers to the screen
Objectives: Learn how to input and output analogue values Be able to see what the Arduino is thinking by sending numbers to the screen By the end of this session: You will know how to write a program to
More informationLab 8. Communications between Arduino and Android via Bluetooth
Lab 8. Communications between Arduino and Android via Bluetooth Dr. X. Li xhli@citytech.cuny.edu Dept. of Computer Engineering Technology New York City College of Technology (Copyright Reserved) In this
More informationDistributed Real- Time Control Systems. Lecture 3 Embedded Systems Interfacing the OuterWorld
Distributed Real- Time Control Systems Lecture 3 Embedded Systems Interfacing the OuterWorld 1 Bibliography ATMEGA 328 Datasheet. arduino.cc Book: Arduino Cookbook, 2nd Ed. Michael Margolis O Reilly, 2012
More informationSchedule. Sanford Bernhardt, Sangster, Kumfer, Michalaka. 3:10-5:00 Workshop: Build a speedometer 5:15-7:30 Dinner and Symposium: Group 2
Schedule 8:00-11:00 Workshop: Arduino Fundamentals 11:00-12:00 Workshop: Build a follower robot 1:30-3:00 Symposium: Group 1 Sanford Bernhardt, Sangster, Kumfer, Michalaka 3:10-5:00 Workshop: Build a speedometer
More informationTN-192. Bar Graph shows analog trends on a dot-matrix character LCD module. Introduction. LCD Module Basics. Custom Characters
Mark Durgin - SCIDYNE Corporation TN-192 Bar Graph shows analog trends on a dot-matrix character LCD module Introduction Dot-Matrix character LCD (Liquid Crystal Display) modules are excellent at conveying
More information// initialize the library with the numbers of the interface pins - S LiquidCrystal lcd(8, 9, 4, 5, 6, 7);
#include /* Joystick Control of two Sabertooth 2x5 modules Horizontal control is X1, Y1 Vertical/Crabbing control is X2, Y2 */ Include the Software Serial library #include
More informationSPDM Level 2 Smart Electronics Unit, Level 2
SPDM Level 2 Smart Electronics Unit, Level 2 Evidence Folder John Johns Form 3b RSA Tipton 1.1 describe the purpose of circuit components and symbols. The candidate can describe the purpose of a range
More information