Understanding the Arduino to LabVIEW Interface
|
|
- Cynthia Paul
- 6 years ago
- Views:
Transcription
1 E-122 Design II Understanding the Arduino to LabVIEW Interface Overview The Arduino microcontroller introduced in Design I will be used as a LabVIEW data acquisition (DAQ) device/controller for Experiments 1 and 2 in Design II. The Arduinos provided for the experiments will be preloaded with the necessary software functionality. No programming of the Arduino microcontroller is needed. However, for LabVIEW to communicate with the Arduino you will need to download and use within LabVIEW a predefined subvi (a subroutine). This document describes what you need to do and know so that LabVIEW can communicate with the Arduino during Experiments 1 and 2. It further overviews some things you should consider if you later plan to use the Arduino DAQ in your major design project. In order to use the Arduino as a data acquisition device/controller connected to LabVIEW, the two must be able to communicate with each other. To do this a common physical hardware interface and a common software communications protocol (the language each will use to communicate) must be available. The physical hardware interface is readily available via a standard USB connection. The software communication protocol that enables LabVIEW to communicate with the Arduino was custom designed to support our Design Lab activities. This protocol is implemented in software that resides on both sides of the USB communications link, i.e. in both LabVIEW and the Arduino. It has been designed to operate according to a master/slave relationship. This means LabVIEW (the master) will always be the one to initiate a conversation on the link. The Arduino (the slave) will always be listening, waiting to get a command from LabVIEW (i.e., send me data from analog channel 1.) The protocol does not support the Arduino initiating a communication with LabVIEW. This orderly approach greatly simplifies the interface design and must be kept in mind when designing your projects. Details of the protocol are described in this document. The Arduino Side of the Protocol There is nothing you need to program or load into the Arduino. It will be preloaded with the necessary "firmware" that implements the protocol to listen for LabVIEW commands on the USB link and respond accordingly. Once powered, a blinking yellow LED on the Arduino board is an indication that the protocol software is loaded and is running. The LabVIEW Side of the Protocol The second half of the interface is coded in a LabVIEW subvi, or if you were using a text based program language, a subroutine that will be called in the LabVIEW program when communication with the Arduino is required. The subvi has inputs and outputs which can be wired into your LabVIEW program. The subvi is named Arduino_Communication_SubVI.vi and it must be downloaded onto your computer. You can download the SubVI under this module in Canvas: Weekly Classwork -> Weeks 3&4 -> 1a. Arduino SubVI Download. Remember where you store the file on your laptop, as you will need the path later to bring it into LabVIEW.
2 To load and use the Arduino subvi: 1. Open LabVIEW and select "File, New VI". A "Block Diagram" and a "Front Panel" window will appear. 2. On the block diagram, get the Functions palette by right clicking. Then point and click at the "Select a VI" option at the bottom of the Functions palette and browse to the "Arduino_Communication_SubVI.vi" file you just saved. Click OK and drop it to the block diagram. The following icon will appear: When you place your mouse over the icon, five wiring/attachment points will appear. Note the colors of these attachment points. Colors within LabVIEW indicate data type (ASCII string, Boolean, integer number, floating point number, etc.) and connecting things with different colors typically will cause an error. See the LabVIEW quick reference guide for more information on data types and colors. 3. Right click on the icon and uncheck "View as Icon. You will get a more descriptive box that better describes the connection points. This box should be "stretched" down to expand it, and also right click on this box and select "Size to Text" to properly size the box. You are now looking at the subvi that is used to communicate with the Arduino. It should look like: To use it, as with any other LabVIEW program, you add controls and indicators on your Front Panel and then "write" your program in the "Block Diagram" by wiring various icons together according to your program design, including communicating with the Arduino. The inputs to the subvi, noted by in arrows on the left, are: 1. COM Port to use on the host (laptop or desktop) computer. This COM Port input will be connected to a drop down selection icon on your front panel that will identify all active COM ports on your computer and allow you to select which one is connected to the Arduino. 2. Message (command) to send to the Arduino. All characters in the Message data type must be ASCII characters. If your front panel inputs a number that will become part of the message, you must convert it to a string character (ASCII) before passing it to the subvi.
3 The outputs of the subvi, noted by out arrows on the right, are: 1. Arduino Reading, the requested data (if any) from the Arduino. This will return to LabVIEW the value on an analog-to-digital converter (ADC) channel (integer data approximately in the range of corresponding to 0-5 volts), or the status of a digital I/O pin (a one or a zero) as requested by the command string sent to the Arduino. The data output from the subvi is a string". That is, it is ASCII data, not a number. It could be converted to a number if desired by your program. 2. Data Input Error - a Boolean output that indicates the data string you tried to send did not meet the built in range checks for the specified bit or channel. For example, you may have requested analog data from analog channel 7, but the valid range is 0 through 5. If a data input error occurs, that string is "thrown away" and not sent to the Arduino. 3. Hardware Error - a Boolean output that indicates a message to/from the Arduino was not successful within the allotted time (I.e. timeout of 3 seconds). This most probably indicates a USB cable fault (disconnected) or the wrong COM port has been selected.. You can (and should for practice) exercise this subvi directly. This subvi has its own Front Panel associated with it; however the subvi s front panel must not be used when you write your own programs. It should only be used to exercise the subvi as an aid to understanding how it works. Typically if you were designing your own subvi you would use the subvi s front panel to verify its design and operation. For the experiments and project in this course, you will write your own programs, which means you will create your own front panels. To see the subvi s front panel, double click on the icon. To see and analyze the program behind the subvi, its Block Diagram, press Control E when the SubVI front panel is open. Be careful not to change the program in the block diagram, otherwise it may not work. Note the "case" structures, the gray boxes. Click on the arrows on top of the boxes to see alternate execution paths based on the input to the case. Right click on just about anything to get "help" on the item. LabVIEW help is excellent and also steers you to examples for a particular feature. The Protocol (Communication Language) Protocols across a USB serial communications line are designed using a series of ASCII characters that are interpreted on each side of the link. Our protocol currently supports five types of commands: 1. Read an analog input channel on the Arduino 2. Set a digital output pin (either high or low) 3. Read a digital input pin 4. Set the speed, direction or on/off status of a motor output 5. Set a digital output pin to function as a Pulse Width Modulated (PWM) control signal The following defines the specific rules of the protocol: The string to write must adhere to the following rules, or else you will get a "DATA INPUT ERROR" from the subvi: 1. To read an analog input (similar to the readadc ( ) function we used in Design I) the first character must be an 'A (for Analog) and the second character must be a number in the range of 0-5, for analog pins 0-5 on the Arduino. So to read analog channel 0, send an A0 character string. For alpha characters, upper or lower case is accepted. The total string length must be two characters. The Arduino Reading window will show the data sent back.
4 2. To set a digital output (similar to the outputlow ( ) and outputhigh ( ) functions in Design I) the first character must be a 'D' (for Digital), the second character must be a 'O' (letter O, not zero for Output), the third (or third and fourth) character(s) is a number either in the range of 4-9, 10 or 12, corresponding to the Arduino digital pin, and the last character is either a 0 (zero) or a 1 to indicate whether to set the bit low or high. So to turn on the red on-board LED at pin 10, send a DO101 character string to the Message input of the subvi. The total string length must be four or five characters, depending on the number of characters of the pin index. 3. To read a digital input (similar to readinput ( ) used for bumpers in Design I), you need to specify D for Digital, I for Input, and a number 2-9 indicating the pin index. So to read the data on pin 2 (which is normally pulled up to 5 volts) send a DI2 character string. The total string length must be three characters. The state of the specified input pin, a one or a zero, will be returned in the Arduino Reading window. 4. To set the status or speed of one or both of the motors controlled by the serial motor controller output (similar to the motors ( ) function in Design I), the first character must be an M for Motor. The second character (Motor #) must be a 1 or a 2 corresponding to the two available motor circuits, or a B indicating the command will be sent to Both motor circuits. The third character (Motor Status) must be either an A or B (where A and B correspond to the motor s spin direction, based on the your wiring), the letter O (not a zero), which means to turn the specified motor(s) Off, or an X meaning to do nothing with the status of a motor(s), i.e. we may just want to change speed. The final one, two or three characters (Motor Speed) must be a number in the range of 0-255, corresponding to the speed you want to set on the specified motor(s). Where 0 indicates no modification to the current operating speed, i.e., we may just want to change Motor Status, and 255 indicates the maximum/full speed. The three character Motor Speed data can be represented as X, XX, or XXX (i.e., 9, 09, 009) as long as it is within the range of The total string length for the motor command must be four, five or six characters, depending on the number of characters in the Motor Speed parameter. As examples, to set the speed on motor #1 to approximately 50% without changing its current status (i.e., on/off or direction), send a M1X127. To turn both motors off while leaving their individual speed settings unchanged, send a "MBO0". Also note that the Design II protocol allows for greater resolution on motor speed control than Design I did during the robot project. There are now 255 speed steps to full speed versus only 100 steps in Design I. This will enable more precise speed control, especially during Experiment To set a digital output pin to function as a Pulse Width Modulated (PWM) control signal the first character must be a P for PWM. The second character must be 5, 6 or 9 corresponding to the allowable digital pins on the Arduino that can support PWM. The final one to three characters must be a number in the range of corresponding to the desired PWM duty cycle (speed), 255 representing full on (maximum input VDC) and 0 representing full off (0 VDC). Like the motor command, speed can be represented as X, XX or XXX. The total string length for the PWM command must be either three, four or five characters, depending on the number of characters in the speed parameter. As an example, to set pin 6 as an output at 50% duty cycle send P6127. THE PWM FEATURE CAN BE USED TO CONTROL THE SPEED OF AN ADDITIONAL THIRD MOTOR, HOWEVER IT IS IMPORTANT TO NOTE THAT THE PWM DIGITAL OUTPUT FROM THE ARDUINO CAN ONLY BE USED AS A CONTROL SIGNAL. IT CANNOT SOURCE CURRENT DIRECTLY TO DRIVE A LOAD, SUCH AS A MOTOR. CONNECTING A MOTOR OR OTHER LOAD DIRECTLY TO A DIGITAL OUTPUT PIN WILL INSTANTANEOUSLY BURN OUT THE ARDUINO MICROCONTROLLER ($$$).
5 THE PWM CONTROL SIGNAL CAN ONLY BE USED BY CONNECTING IT TO THE BASE OF A TRANSISTOR THROUGH A 5K-10K OHM RESISTOR. THE TRANSISTOR WILL FUNCTION AS A HIGH CURRENT SWITCH TO DRIVE THE MOTOR. (Similar to the Floor Sensor Module circuit used in Design I.) NEVER USE A PWM DIGITAL OUTPUT PIN WITHOUT FIRST HAVING YOUR CIRCUIT APPROVED BY YOUR INSTRUCTOR. Table 1. summarizes the valid command sequences that can be sent to the subvi. Remember, all command sequences must be sent as ASCII characters and all data returned by the subvi is in ASCII. If other than a valid command sequence is presented to the subvi, it will ignore the command and return a "Data Input Error". Command First Parameter (*) Second Parameter (*) Third Parameter (*) Fourth Parameter Read an Analog Input A Set a Digital Output low or high D O 4-9, 10, 12 0 or 1 Read a Digital Input D I Control one or both of the two motors connected to the Serial Motor Controller Board (i.e., the robot wheel motors) Set a Digital Output to function as Pulse Width Modulation "control signal" (to possibly regulate the speed of a third motor) M 1, 2, B A, B, O, X P 5, 6, Table 1. Valid Input Strings (ASCII) for the "Arduino_Communication_SubVI" (*) Note: Any letter can be either lower or upper case.
For this exercise, you will need a partner, an Arduino kit (in the plastic tub), and a laptop with the Arduino programming environment.
Physics 222 Name: Exercise 6: Mr. Blinky This exercise is designed to help you wire a simple circuit based on the Arduino microprocessor, which is a particular brand of microprocessor that also includes
More informationEE-110 Introduction to Engineering & Laboratory Experience Saeid Rahimi, Ph.D. Labs Introduction to Arduino
EE-110 Introduction to Engineering & Laboratory Experience Saeid Rahimi, Ph.D. Labs 10-11 Introduction to Arduino In this lab we will introduce the idea of using a microcontroller as a tool for controlling
More informationJ. La Favre Using Arduino with Raspberry Pi February 7, 2018
As you have already discovered, the Raspberry Pi is a very capable digital device. Nevertheless, it does have some weaknesses. For example, it does not produce a clean pulse width modulation output (unless
More informationLab 5: Inverted Pendulum PID Control
Lab 5: Inverted Pendulum PID Control In this lab we will be learning about PID (Proportional Integral Derivative) control and using it to keep an inverted pendulum system upright. We chose an inverted
More informationWorkshops Elisava Introduction to programming and electronics (Scratch & Arduino)
Workshops Elisava 2011 Introduction to programming and electronics (Scratch & Arduino) What is programming? Make an algorithm to do something in a specific language programming. Algorithm: a procedure
More informationTraining Schedule. Robotic System Design using Arduino Platform
Training Schedule Robotic System Design using Arduino Platform Session - 1 Embedded System Design Basics : Scope : To introduce Embedded Systems hardware design fundamentals to students. Processor Selection
More informationEE 314 Spring 2003 Microprocessor Systems
EE 314 Spring 2003 Microprocessor Systems Laboratory Project #9 Closed Loop Control Overview and Introduction This project will bring together several pieces of software and draw on knowledge gained in
More informationTarocco Closed Loop Motor Controller
Contents Safety Information... 3 Overview... 4 Features... 4 SoC for Closed Loop Control... 4 Gate Driver... 5 MOSFETs in H Bridge Configuration... 5 Device Characteristics... 6 Installation... 7 Motor
More informationLab 12 Laboratory 12 Data Acquisition Required Special Equipment: 12.1 Objectives 12.2 Introduction 12.3 A/D basics
Laboratory 12 Data Acquisition Required Special Equipment: Computer with LabView Software National Instruments USB 6009 Data Acquisition Card 12.1 Objectives This lab demonstrates the basic principals
More informationARDUINO / GENUINO. start as professional
ARDUINO / GENUINO start as professional . ARDUINO / GENUINO start as professional short course in a book MOHAMMED HAYYAN ALSIBAI SULASTRI ABDUL MANAP Publisher Universiti Malaysia Pahang Kuantan 2017 Copyright
More informationCURIE Academy, Summer 2014 Lab 2: Computer Engineering Software Perspective Sign-Off Sheet
Lab : Computer Engineering Software Perspective Sign-Off Sheet NAME: NAME: DATE: Sign-Off Milestone TA Initials Part 1.A Part 1.B Part.A Part.B Part.C Part 3.A Part 3.B Part 3.C Test Simple Addition Program
More informationLab 2: Blinkie Lab. Objectives. Materials. Theory
Lab 2: Blinkie Lab Objectives This lab introduces the Arduino Uno as students will need to use the Arduino to control their final robot. Students will build a basic circuit on their prototyping board and
More informationUragan- for LabView. Installation
for LabView Installation Follow these steps to install the LabView driver: 1. Download UraganLabView.zip 2. Unzip UraganLabView.zip in the user.lib directory of your LabView installation 3. Run LabView
More informationMADEinUSA OPERATOR S MANUAL. RS232 Interface Rev. A
MADEinUSA OPERATOR S MANUAL RS232 Interface 92-3006 Rev. A www.iradion.com Iradion Laser, Inc. 51 Industrial Dr. N. Smithfield, RI 02896 (410) 762-5100 Table of Contents 1. Overview... 2 2. Equipment Required...
More informationPractical Assignment 1: Arduino interface with Simulink
!! Department of Electrical Engineering Indian Institute of Technology Dharwad EE 303: Control Systems Practical Assignment - 1 Adapted from Take Home Labs, Oklahoma State University Practical Assignment
More informationEVDP610 IXDP610 Digital PWM Controller IC Evaluation Board
IXDP610 Digital PWM Controller IC Evaluation Board General Description The IXDP610 Digital Pulse Width Modulator (DPWM) is a programmable CMOS LSI device, which accepts digital pulse width data from a
More informationTopcon Receiver Utility: GNSS Receiver Firmware Update Process. Oscar R. Cantu
Topcon Receiver Utility: GNSS Receiver Firmware Update Process Oscar R. Cantu TRU: GNSS Receiver Firmware Update Topcon Receiver Utility (TRU), product definition Office Processing and Reporting Software
More informationHB-25 Motor Controller (#29144)
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 informationQuantizer step: volts Input Voltage [V]
EE 101 Fall 2008 Date: Lab Section # Lab #8 Name: A/D Converter and ECEbot Power Abstract Partner: Autonomous robots need to have a means to sense the world around them. For example, the bumper switches
More informationEndurance R/C Wi-Fi Servo Controller 2 Instructions
Endurance R/C Wi-Fi Servo Controller 2 Instructions The Endurance R/C Wi-Fi Servo Controller 2 allows you to control up to eight hobby servos, R/C relays, light controllers and more, across the internet
More informationLesson 3: Arduino. Goals
Introduction: This project introduces you to the wonderful world of Arduino and how to program physical devices. In this lesson you will learn how to write code and make an LED flash. Goals 1 - Get to
More informationProgramming 2 Servos. Learn to connect and write code to control two servos.
Programming 2 Servos Learn to connect and write code to control two servos. Many students who visit the lab and learn how to use a Servo want to use 2 Servos in their project rather than just 1. This lesson
More informationEE 308 Lab Spring 2009
9S12 Subsystems: Pulse Width Modulation, A/D Converter, and Synchronous Serial Interface In this sequence of three labs you will learn to use three of the MC9S12's hardware subsystems. WEEK 1 Pulse Width
More informationSetup Download the Arduino library (link) for Processing and the Lab 12 sketches (link).
Lab 12 Connecting Processing and Arduino Overview In the previous lab we have examined how to connect various sensors to the Arduino using Scratch. While Scratch enables us to make simple Arduino programs,
More informationUSB Multifunction Arbitrary Waveform Generator AWG2300. User Guide
USB Multifunction Arbitrary Waveform Generator AWG2300 User Guide Contents Safety information... 3 About this guide... 4 AWG2300 specifications... 5 Chapter 1. Product introduction 1 1. Package contents......
More informationMICROCONTROLLERS BASIC INPUTS and OUTPUTS (I/O)
PH-315 Portland State University MICROCONTROLLERS BASIC INPUTS and OUTPUTS (I/O) ABSTRACT A microcontroller is an integrated circuit containing a processor and programmable read-only memory, 1 which is
More informationRC-WIFI CONTROLLER USER MANUAL
RC-WIFI CONTROLLER USER MANUAL In the rapidly growing Internet of Things (IoT), applications from personal electronics to industrial machines and sensors are getting wirelessly connected to the Internet.
More informationCoding with Arduino to operate the prosthetic arm
Setup Board Install FTDI Drivers This is so that your RedBoard will be able to communicate with your computer. If you have Windows 8 or above you might already have the drivers. 1. Download the FTDI driver
More informationUSING RS-232 to RS-485 CONVERTERS (With RS-232, RS-422 and RS-485 devices)
ICS DataCom Application Note USING RS- to RS- CONVERTERS (With RS-, RS- and RS- devices) INTRODUCTION Table RS-/RS- Logic Levels This application note provides information about using ICSDataCom's RS-
More informationCost efficient design Operates in full sunlight Low power consumption Wide field of view Small footprint Simple serial connectivity Long Range
Cost efficient design Operates in full sunlight Low power consumption Wide field of view Small footprint Simple serial connectivity Long Range sweep v1.0 CAUTION This device contains a component which
More informationCost efficient design Operates in full sunlight Low power consumption Wide field of view Small footprint Simple serial connectivity Long Range
Cost efficient design Operates in full sunlight Low power consumption Wide field of view Small footprint Simple serial connectivity Long Range sweep v1.0 CAUTION This device contains a component which
More informationHigh Current DC Motor Driver Manual
High Current DC Motor Driver Manual 1.0 INTRODUCTION AND OVERVIEW This driver is one of the latest smart series motor drivers designed to drive medium to high power brushed DC motor with current capacity
More informationLVTX-10 Series Ultrasonic Sensor Installation and Operation Guide
LVTX-10 Series Ultrasonic Sensor Installation and Operation Guide M-5578/0516 M-5578/0516 Section TABLE OF CONTENTS 1 Introduction... 1 2 Quick Guide on Getting Started... 2 Mounting the LVTX-10 Series
More informationMechatronics Laboratory Assignment 3 Introduction to I/O with the F28335 Motor Control Processor
Mechatronics Laboratory Assignment 3 Introduction to I/O with the F28335 Motor Control Processor Recommended Due Date: By your lab time the week of February 12 th Possible Points: If checked off before
More informationExperiment #3: Micro-controlled Movement
Experiment #3: Micro-controlled Movement So we re already on Experiment #3 and all we ve done is blinked a few LED s on and off. Hang in there, something is about to move! As you know, an LED is an output
More informationApplication Note AN 102: Arduino I2C Interface to K 30 Sensor
Application Note AN 102: Arduino I2C Interface to K 30 Sensor Introduction The Arduino UNO, MEGA 1280 or MEGA 2560 are ideal microcontrollers for operating SenseAir s K 30 CO2 sensor. The connection to
More informationDevelopment of a MATLAB Data Acquisition and Control Toolbox for BASIC Stamp Microcontrollers
Chapter 4 Development of a MATLAB Data Acquisition and Control Toolbox for BASIC Stamp Microcontrollers 4.1. Introduction Data acquisition and control boards, also known as DAC boards, are used in virtually
More informationSerial Communication AS5132 Rotary Magnetic Position Sensor
Serial Communication AS5132 Rotary Magnetic Position Sensor Stephen Dunn 11/13/2015 The AS5132 is a rotary magnetic position sensor capable of measuring the absolute rotational angle of a magnetic field
More informationezsystem elab16m Light Sensing Robot
ezsystem elab16m Light Sensing Robot ezsystem The aim of ezsystem is to enable Creativity and Innovation at an early age in a Problem Based Learning (PBL) approach. ezsystem integrates ezcircuit Designer,
More informationMate Serial Communications Guide This guide is only relevant to Mate Code Revs. of 4.00 and greater
Mate Serial Communications Guide This guide is only relevant to Mate Code Revs. of 4.00 and greater For additional information contact matedev@outbackpower.com Page 1 of 20 Revision History Revision 2.0:
More informationProgrammable Control Introduction
Programmable Control Introduction By the end of this unit you should be able to: Give examples of where microcontrollers are used Recognise the symbols for different processes in a flowchart Construct
More informationApplication Note. Communication between arduino and IMU Software capturing the data
Application Note Communication between arduino and IMU Software capturing the data ECE 480 Team 8 Chenli Yuan Presentation Prep Date: April 8, 2013 Executive Summary In summary, this application note is
More informationModbus communication module for TCX2: AEX-MOD
Modbus communication module for TCX2: Communication Specification TCX2 is factory installed in TCX2 series controllers with -MOD suffix, and is also available separately upon request for customer installation
More informationRodni What will yours be?
Rodni What will yours be? version 4 Welcome to Rodni, a modular animatronic animal of your own creation for learning how easy it is to enter the world of software programming and micro controllers. During
More informationBlinkRC User Manual. 21 December Hardware Version 1.1. Manual Version 2.0. Copyright 2010, Blink Gear LLC. All rights reserved.
BlinkRC 802.11b/g WiFi Servo Controller with Analog Feedback BlinkRC User Manual 21 December 2010 Hardware Version 1.1 Manual Version 2.0 Copyright 2010, Blink Gear LLC. All rights reserved. http://blinkgear.com
More informationArduino An Introduction
Arduino An Introduction Hardware and Programming Presented by Madu Suthanan, P. Eng., FEC. Volunteer, Former Chair (2013-14) PEO Scarborough Chapter 2 Arduino for Mechatronics 2017 This note is for those
More informationExperiment 5.B. Multifunction Wireless Control. ECEN 2270 Electronics Design Laboratory 1
.B Multifunction Wireless Control Electronics Design Laboratory 1 Procedures 5.B.0 5.B.1 5.B.2 5.B.3 5.B.4 Turn in your pre-lab before doing anything else. Check that Part A is in working order Wirelessly
More informationMonitoring Temperature using LM35 and Arduino UNO
Sharif University of Technology Microprocessor Arduino UNO Project Monitoring Temperature using LM35 and Arduino UNO Authors: Sadegh Saberian 92106226 Armin Vakil 92110419 Ainaz Hajimoradlou 92106142 Supervisor:
More informationExercise 2. Point-to-Point Programs EXERCISE OBJECTIVE
Exercise 2 Point-to-Point Programs EXERCISE OBJECTIVE In this exercise, you will learn various important terms used in the robotics field. You will also be introduced to position and control points, and
More informationExercise 5: PWM and Control Theory
Exercise 5: PWM and Control Theory Overview In the previous sessions, we have seen how to use the input capture functionality of a microcontroller to capture external events. This functionality can also
More informationH-bridge for DC motor control
H-bridge for DC motor control Directional control Control algorithm for this h-bridge circuit A B 0 0 Stop 0 1 Forward 1 0 Reverse 1 1 Prohibited This circuit has the advantage of small voltage drop due
More informationFABO ACADEMY X ELECTRONIC DESIGN
ELECTRONIC DESIGN MAKE A DEVICE WITH INPUT & OUTPUT The Shanghaino can be programmed to use many input and output devices (a motor, a light sensor, etc) uploading an instruction code (a program) to it
More informationCMU232 User Manual Last Revised October 21, 2002
CMU232 User Manual Last Revised October 21, 2002 Overview CMU232 is a new low-cost, low-power serial smart switch for serial data communications. It is intended for use by hobbyists to control multiple
More informationDebugging a Boundary-Scan I 2 C Script Test with the BusPro - I and I2C Exerciser Software: A Case Study
Debugging a Boundary-Scan I 2 C Script Test with the BusPro - I and I2C Exerciser Software: A Case Study Overview When developing and debugging I 2 C based hardware and software, it is extremely helpful
More informationMechatronics Engineering and Automation Faculty of Engineering, Ain Shams University MCT-151, Spring 2015 Lab-4: Electric Actuators
Mechatronics Engineering and Automation Faculty of Engineering, Ain Shams University MCT-151, Spring 2015 Lab-4: Electric Actuators Ahmed Okasha, Assistant Lecturer okasha1st@gmail.com Objective Have a
More informationQuick Start. Precis-BX305. Precise GNSS RTK Board.
Quick Start Precis-BX305 Precise GNSS RTK Board www.tersus-gnss.com December, 2016 Quick Start Guide of Precis-BX305 This quick start guide provides the basic information needed to set up and use Precis-BX305
More informationDI-1100 USB Data Acquisition (DAQ) System Communication Protocol
DI-1100 USB Data Acquisition (DAQ) System Communication Protocol DATAQ Instruments Although DATAQ Instruments provides ready-to-run WinDaq software with its DI-1100 Data Acquisition Starter Kits, programmers
More informationFamiliarization with the Servo Robot System
Exercise 1 Familiarization with the Servo Robot System EXERCISE OBJECTIVE In this exercise, you will be introduced to the Lab-Volt Servo Robot System. In the Procedure section, you will install and connect
More informationME 333 Assignment 7 and 8 PI Control of LED/Phototransistor Pair. Overview
ME 333 Assignment 7 and 8 PI Control of LED/Phototransistor Pair Overview For this assignment, you will be controlling the light emitted from and received by an LED/phototransistor pair. There are many
More informationMICROCONTROLLERS BASIC INPUTS and OUTPUTS (I/O)
PH-315 Portland State University MICROCONTROLLERS BASIC INPUTS and OUTPUTS (I/O) ABSTRACT A microcontroller is an integrated circuit containing a processor and programmable read-only memory, 1 which is
More informationIntroduction 1. Download socket (the cable plugs in here so that the GENIE microcontroller can talk to the computer)
Introduction 1 Welcome to the magical world of GENIE! The project board is ideal when you want to add intelligence to other design or electronics projects. Simply wire up your inputs and outputs and away
More informationLESSONS Lesson 1. Microcontrollers and SBCs. The Big Idea: Lesson 1: Microcontrollers and SBCs. Background: What, precisely, is computer science?
LESSONS Lesson Lesson : Microcontrollers and SBCs Microcontrollers and SBCs The Big Idea: This book is about computer science. It is not about the Arduino, the C programming language, electronic components,
More informationInstrumentation and Microcontrollers Using Automatic Code Generation
Instrumentation and Microcontrollers Using Automatic Code Generation Using and Applying Microcontrollers for the Rest of Us! Marc E Herniter 2013 Marc E. Herniter, Rose-Hulman Institute of Technology,
More informationProgramming a Servo. Servo. Red Wire. Black Wire. White Wire
Programming a Servo Learn to connect wires and write code to program a Servo motor. If you have gone through the LED Circuit and LED Blink exercises, you are ready to move on to programming a Servo. A
More informationAn Introduction to Programming using the NXT Robot:
An Introduction to Programming using the NXT Robot: exploring the LEGO MINDSTORMS Common palette. Student Workbook for independent learners and small groups The following tasks have been completed by:
More informationShenzhen ATC Technology CO.,LTD ATC. A-1 Serial Remote I/O Module. User Manual. V1.13 Edit:2018/01/
ATC A-1 Serial Remote I/O Module User Manual V1.13 Edit:2018/01/30-1 - Catalogue 1.The introduction of Modbus protocol...- 3-1.1 Modbus protocol master-slave response process... - 3-1.2 Modbus register
More informationLabVIEW 8" Student Edition
LabVIEW 8" Student Edition Robert H. Bishop The University of Texas at Austin PEARSON Prentice Hall Upper Saddle River, NJ 07458 CONTENTS Preface xvii LabVIEW Basics 1.1 System Configuration Requirements
More informationStuduino Icon Programming Environment Guide
Studuino Icon Programming Environment Guide Ver 0.9.6 4/17/2014 This manual introduces the Studuino Software environment. As the Studuino programming environment develops, these instructions may be edited
More informationLAB II. INTRODUCTION TO LABVIEW
1. OBJECTIVE LAB II. INTRODUCTION TO LABVIEW In this lab, you are to gain a basic understanding of how LabView operates the lab equipment remotely. 2. OVERVIEW In the procedure of this lab, you will build
More informationWTDOT-M. eeder. Digital Output Module. Technologies FEATURES SPECIFICATIONS DESCRIPTION. Weeder Technologies
eeder Technologies 90-A Beal Pkwy NW, Fort Walton Beach, FL 32548 www.weedtech.com 850-863-5723 Digital Output Module FEATURES 8 high-current open-collector output channels with automatic overload shutdown.
More informationDigital-to-Analog Converter. Lab 3 Final Report
Digital-to-Analog Converter Lab 3 Final Report The Ion Cannons: Shrinand Aggarwal Cameron Francis Nicholas Polito Section 2 May 1, 2017 1 Table of Contents Introduction..3 Rationale..3 Theory of Operation.3
More informationJaguar Motor Controller (Stellaris Brushed DC Motor Control Module with CAN)
Jaguar Motor Controller (Stellaris Brushed DC Motor Control Module with CAN) 217-3367 Ordering Information Product Number Description 217-3367 Stellaris Brushed DC Motor Control Module with CAN (217-3367)
More informationCPSC 226 Lab Four Spring 2018
CPSC 226 Lab Four Spring 2018 Directions. This lab is a quick introduction to programming your Arduino to do some basic internal operations and arithmetic, perform character IO, read analog voltages, drive
More informationVersion Futek Instruments, LLC
FT_ez_DAQ User s Manual Version 2.0.0 Futek Instruments, LLC Table of Contents 1. Introduction... 3 2. System Requirements... 3 3. Software Installation... 4 3.1 Application software and USB driver installation...
More informationRelay Driver Overview and Applications
Relay Driver Overview and Applications Describes Basic and Advanced Settings for common and alternative/novel uses for the Relay driver (RD-1). Morningstar s Relay Driver (RD-1) is a fully programmable
More informationIndustrial Automation Training Academy. Arduino, LabVIEW & PLC Training Programs Duration: 6 Months (180 ~ 240 Hours)
nfi Industrial Automation Training Academy Presents Arduino, LabVIEW & PLC Training Programs Duration: 6 Months (180 ~ 240 Hours) For: Electronics & Communication Engineering Electrical Engineering Instrumentation
More informationPage 1/10 Digilent Analog Discovery (DAD) Tutorial 6-Aug-15. Figure 2: DAD pin configuration
Page 1/10 Digilent Analog Discovery (DAD) Tutorial 6-Aug-15 INTRODUCTION The Diligent Analog Discovery (DAD) allows you to design and test both analog and digital circuits. It can produce, measure and
More informationCatalog
- 1 - Catalog 1. Overview...- 3-2. Feature... - 3-3. Application...- 3-4. Block Diagram...- 3-5. Electrical Characteristics... - 4-6. Operation... - 4-1) Power on Reset... - 4-2) Sleep mode... - 4-3) Working
More informationRevision 1. March 21, ADC Operation Manual N 11 th St San Jose CA
Revision 1 March 21, 2017 ADC Operation Manual www.mountztorque.com - 1080 N 11 th St San Jose CA 95112 408.292.2214 1 Index 1. Installation 3 1.1 Required PC specification 3 1.2 Software 3 2. Operation
More informationDESCRIPTION DOCUMENT FOR WIFI / BT HEAVY DUTY RELAY BOARD HARDWARE REVISION 0.1
DESCRIPTION DOCUMENT FOR WIFI / BT HEAVY DUTY RELAY BOARD HARDWARE REVISION 0.1 Department Name Signature Date Author Reviewer Approver Revision History Rev Description of Change A Initial Release Effective
More informationModule: Arduino as Signal Generator
Name/NetID: Teammate/NetID: Module: Laboratory Outline In our continuing quest to access the development and debugging capabilities of the equipment on your bench at home Arduino/RedBoard as signal generator.
More informationTWEAK THE ARDUINO LOGO
TWEAK THE ARDUINO LOGO Using serial communication, you'll use your Arduino to control a program on your computer Discover : serial communication with a computer program, Processing Time : 45 minutes Level
More informationZIO Python API. Tutorial. 1.1, May 2009
ZIO Python API Tutorial 1.1, May 2009 This work is licensed under the Creative Commons Attribution-Share Alike 2.5 India License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/2.5/in/
More informationBuilt-in soft-start feature. Up-Slope and Down-Slope. Power-Up safe start feature. Motor will only start if pulse of 1.5ms is detected.
Thank You for purchasing our TRI-Mode programmable DC Motor Controller. Our DC Motor Controller is the most flexible controller you will find. It is user-programmable and covers most applications. This
More informationGeneral Description. The TETRIX MAX Servo Motor Expansion Controller features the following:
General Description The TETRIX MAX Servo Motor Expansion Controller is a servo motor expansion peripheral designed to allow the addition of multiple servo motors to the PRIZM Robotics Controller. The device
More informationPCB & Circuit Designing (Summer Training Program) 6 Weeks/ 45 Days PRESENTED BY
PCB & Circuit Designing (Summer Training Program) 6 Weeks/ 45 Days PRESENTED BY RoboSpecies Technologies Pvt. Ltd. Office: D-66, First Floor, Sector- 07, Noida, UP Contact us: Email: stp@robospecies.com
More informationHAW-Arduino. Sensors and Arduino F. Schubert HAW - Arduino 1
HAW-Arduino Sensors and Arduino 14.10.2010 F. Schubert HAW - Arduino 1 Content of the USB-Stick PDF-File of this script Arduino-software Source-codes Helpful links 14.10.2010 HAW - Arduino 2 Report for
More informationPSoC and Arduino Calculator
EGR 322 Microcontrollers PSoC and Arduino Calculator Prepared for: Dr. Foist Christopher Parisi (390281) Ryan Canty (384185) College of Engineering California Baptist University 05/02/12 TABLE OF CONTENTS
More informationPart 1. Using LabVIEW to Measure Current
NAME EET 2259 Lab 11 Studying Characteristic Curves with LabVIEW OBJECTIVES -Use LabVIEW to measure DC current. -Write LabVIEW programs to display the characteristic curves of resistors, diodes, and transistors
More informationB Robo Claw 2 Channel 25A Motor Controller Data Sheet
B0098 - Robo Claw 2 Channel 25A Motor Controller Feature Overview: 2 Channel at 25A, Peak 30A Hobby RC Radio Compatible Serial Mode TTL Input Analog Mode 2 Channel Quadrature Decoding Thermal Protection
More informationMD03-50Volt 20Amp H Bridge Motor Drive
MD03-50Volt 20Amp H Bridge Motor Drive Overview The MD03 is a medium power motor driver, designed to supply power beyond that of any of the low power single chip H-Bridges that exist. Main features are
More informationB RoboClaw 2 Channel 30A Motor Controller Data Sheet
B0098 - RoboClaw 2 Channel 30A Motor Controller (c) 2010 BasicMicro. All Rights Reserved. Feature Overview: 2 Channel at 30Amp, Peak 60Amp Battery Elimination Circuit (BEC) Switching Mode BEC Hobby RC
More informationThe plan... CSE 6324 From control to actuators Michael Jenkin Office Hours: Sherman 1028 Wed 3-4. From the bottom up...
The plan... CSE 6324 From control to actuators Michael Jenkin jenkin@cse.yorku.ca Office Hours: Sherman 1028 Wed 3-4 Lectures this week No class next week Start building the week after (i) Need to sort
More informationAttribution Thank you to Arduino and SparkFun for open source access to reference materials.
Attribution Thank you to Arduino and SparkFun for open source access to reference materials. Contents Parts Reference... 1 Installing Arduino... 7 Unit 1: LEDs, Resistors, & Buttons... 7 1.1 Blink (Hello
More informationUIO Digital I/Os & DAQ Board User Manual
UIO-369 5 Digital I/Os & DAQ Board User Manual /3 UIO-369 Digital Inputs/Outputs & DAQ board with 5 channels and USB/RS3/Bluetooth/RF connectivity. Welcome to the world of Computer Automation. This Digital
More informationWTDIN-M. eeder. Digital Input Module. Technologies FEATURES SPECIFICATIONS DESCRIPTION. Weeder Technologies
eeder Technologies 90-A Beal Pkwy NW, Fort Walton Beach, FL 32548 www.weedtech.com 850-863-5723 Digital Input Module FEATURES 8 wide-range digital input channels with high voltage transient protection.
More informationUltimate Actuator Drivebox 30A Quick start guide
2016 Ultimate Actuator Drivebox 30A Quick start guide info@e-tronix.cz e-tronix s.r.o. 1.1.2016 OBSAH Identification... 3 Serial Number... 3 Manufacturer and reseller contact... 4 Before Start... 4 UAD30A
More informationCorrelation of Voltage and Temperature Measurement
MEASURpoint Correlation of Voltage and Temperature Measurement Precision Measurement Instrument MEASURpoint is an ultra-accurate instrument for any combination of temperature and voltage to be measured
More informationThe light sensor, rotation sensor, and motors may all be monitored using the view function on the RCX.
Review the following material on sensors. Discuss how you might use each of these sensors. When you have completed reading through this material, build a robot of your choosing that has 2 motors (connected
More informationPulse-Width-Modulation Motor Speed Control with a PIC (modified from lab text by Alciatore)
Laboratory 14 Pulse-Width-Modulation Motor Speed Control with a PIC (modified from lab text by Alciatore) Required Components: 1x PIC 16F88 18P-DIP microcontroller 3x 0.1 F capacitors 1x 12-button numeric
More information