Device Interfacing with Python and ZIO

Slides:



Advertisements
Similar presentations
Sensing and Control.
Advertisements

What is Arduino?  Arduino is a ATMEL 168 micro-controller kit designed specially for small projects  User friendly IDE(Integrated Development Environment)
Basic DC Motor Circuits
Robotics Club, Snt Council2 The 3 Schools of Robotics: Mechanical Design – Types of motors – Material selection –
PS 141 Presentation By Gabe, Tanya Mae Kim, Jaeyoun Ong, Raymond Carey.
Revision analog electronics
How to Build a Digital-Physical System-Lab Assegid Kidané Fall 2014.
SENIOR DESIGN 10/16.
Discovery Lab School of Computing & Information System Florida International University.
Digital I/O Connecting to the Outside World
Introduction.
Micromouse Meeting #3 Lecture #2 Power Motors Encoders.
Physics and Electronics. Electronic systems Electronic systems are made up of 3 parts: 1)An INPUT SENSOR – these detect changes in the environment Examples:
Embedded Programming and Robotics
Team Members Jordan Bennett Kyle Schultz Min Jae Lee Kevin Yeh.
Operational Amplifiers
Image of Arduino. Arduino discussion Address issues with circuit walk-through – Electricity, Programming, Arduino Concepts Work on BeatTable (next week)
Hardware Monitor Sephiroth Kwon GRMA
Overview What is Arduino? What is it used for? How to get started Demonstration Questions are welcome at any time.
Resistive Transducers Sensors Used in Electronics.
Microprocessors Tutorial 1: Arduino Basics
Automatic accident avoiding system PROJECT MEMBERS MUTHUKUMAR.K (05ME33) SAKTHIDHASAN.S (05ME39) SAKTHIVEL.N (05ME40) VINOTH.S (05ME56) PROJECT GUIDE:
18240 Element two - Components INPUTS OUTPUTS PURPOSE TYPICAL USE.
ELECTRONICS – Input Transducers Engineering Science – National 5.
BLDC Motor Speed Control with RPM Display. Introduction BLDC Motor Speed Control with RPM Display  The main objective of this.
Module 8 Tutorial  An 8086 system is used for controlling the speed of a motor. The motor can operate at 5 different speeds (1- 5).  The speed.
1 Microcontrollers. 2 Programmers work in the virtual world Machinery works in the physical world Microcontrollers connect the virtual and physical world.
Zilogic Systems 1 Device Interfacing with Python and ZIO Zilogic Systems.
Zilogic Systems 1 Device Interfacing with Python and ZIO Zilogic Systems.
Smart Parking System (SPS) Prepared by: Ma’ali Hasan. Noora Dmedi.
Ryan Massicci Alan Lee Troy Hawley Weather Meter.
Lesson 1 PLC BASICS. PLC Definition  Programmable Logic Controllers are industrial computers that control machine and other applications.  PLC have.
Application Case Study Christmas Lights Controller
Arduino.
ARDUINO BASED UNDERGROUND CABLE FAULT DETECTION
6. PCB Layout with part position
Solar Energy Generator: Design Rendering Description
Scrolling LCD using Arduino.
Direct current circuits
Microcontrollers, Basics Tips and Tricks with PIC MCUs
Connect 4 Change the terms in the following template to customize Connect 4 for any topic. You will need to copy one copy of one of the two templates.
Arduino Based Industrial appliances control system by decoding dual tone multi frequency signals on GSM / CDMA network. Submitted by:
ARDUINO BASED AUTOMATIC TEMPERATURE BASED FAN SPEED CONTROLLER
Computer Hardware – System Unit
Microprocessors Tutorial 1: Arduino Basics
Arduino Development for Beginners
Potential Divider Aims What is a potential divider
Principles & Applications and Simple Interfacing
‘SONAR’ using Arduino & ultrasonic distance sensor
“Innovative Peripheral Interfacing System and Peripheral Learning Platform for Embedded System-Hardware Approach”
Session III Architecture of PLC
How to avoid catching things on fire.
Analog Input through POT
PWM? K. A. Connor Mobile Studio Project
Arduino and Grove LET’S START.
Transistor & Voltage Divider
What is an Arduino ? Open Source electronic prototyping platform based on flexible easy to use hardware and software.
Introduction to Microprocessors and Microcontrollers
CS-4540 Robotics Lab 00 - Introduction and OHM's law.
Vibration Energy Harvesting Circuit to Power Wireless Sensor Nodes
Internet-of-Things (IoT)
enerlogic Energy Smart Office Control System
Potential Dividers Electric Circuits ☞.
Introduction to Wiring Logic Gates
Sensors and actuators Sensors Resistive sensors
ACOE347 – Data Acquisition and Automation Systems
Black Box for vehicle diagnostics
Describe the action of thermistors and light- dependent resistors and show understanding of their use as input transducers Thermistor A transducer is an.
Arduino and Grove LET’S START.
Introduction to arduino
Presentation transcript:

Device Interfacing with Python and ZIO vijaykumar@zilogic.com Zilogic Systems

Overview Introduction to ZIO Interfacing Devices Demo Projects

Device Interfacing Parallel Port Limitations Only Digital IO Phased out

ZIO Architecture USB based IO board Digital I/O Analog Input PWM Output I2C Bus SPI Bus Sensors Transistors Relays LEDs Switches I2C Devices DC Motors IR receivers ... PC – The Universal Platform API to communicate with ZIO

ZIO Agent ZIO Motherboard is powered by a ARM processor. ZIO Agent Receives commands from PC through USB Manipulates the interfaces based on the commands

Ports GPIO LEDs, Relays, Switches, MOSFETs, Optocouplers, ... Sensor Tempature, Potentiometer, Light, Pressure, Humidity, ... PWM DC Motor, Servo Motor, LED Brightness Control, ... I2C/SPI RTCs, LCDs, IR Receivers, Sensors, Phone Line Interface ...

Ports (Contd.) Each Port has 6 signals Example GPIO port +5V Power GND 2 Outputs 2 Inputs Terminated in RJ12 connector

Demo Board ZIO Motherboard Bread Board RJ12 Breakout Board Devices Board Temp. Sensor Board

LED Simple output devices Used for status indication, displays, lighting ...

LED (Contd.)

Interface LED to ZIO GPIO Port Signals 2 Outputs, 2 Inputs +5V Supply, GND Setting Output to True, outputs 0V Setting Output to False, outputs 5V

Interface LED to ZIO (Contd.) GPIO outputs have a built-in series resistor Eliminates series resistors on external circuit

Interface LED to ZIO (Contd.) from zio import * agent = Agent(“/dev/ttyUSB0”) gpio = GPIO(agent) gpio.write_output_pin(0, True) gpio.write_output_pin(0, False)

Voltage Divider

Switch Simple input device Switch is closed Vout = 0V Switch is open Switch state can be determined, by measuring Vout.

Interface Switch to ZIO GPIO Input signals can test for a 0V or 5V. Input > 2V Read as True Input < 0.8V Read as False

Interface Switch to ZIO (Contd.) GPIO inputs have built-in pull-ups resistors Eliminates pull-ups on external circuits

Interface Switch to ZIO (Contd.) import time from zio import * agent = Agent(“/dev/ttyUSB0”) gpio = GPIO(agent) while True: print gpio.read_input_pin(0) time.sleep(1)

Light Sensor (LDR) LDR – Light Dependent Resistor Resistance decreases with increase in light intensity Voltage Vout decreases with increase in light intensity

Interface LDR to ZIO Sensor port measure voltages between 0 – 3V Signals +5V, GND 2 Sensor Inputs Read the voltage at Sensor 0

Interface LDR to ZIO (Contd.) Sensor inputs have built-in pull-up resistors Eliminates pull-ups on external circuits Pull-ups connected to 3V, the max voltage that can be measured by sensor port.

Interface LDR to ZIO (Contd.) import time from zio import * agent = Agent(“/dev/ttyUSB0”) sensor = Sensor(agent) while True: print sensor.read_pin(0) time.sleep(1)

DC Motor Examples CPU Fan Wheels of a Robot CDROM drives Printers DC motor controlled by a human operated switch

DC Motor (Contd.) Replace switch by a MOSFET Vcontrol = 5V Motor turns ON Vcontrol = 0V Motor turns OFF

DC Motor (Contd.) GPIO port - motor ON and OFF Motor speed can be controlled DC motor speed is propotional to the supply voltage Speed control can be acheived by varying the averaging voltage delivered to the motor

DC Motor (Contd.) Rapidly turn motor on and off Duty cycle (ON time / Period) * 100 Duty cycle 100% Average voltage - 12V Duty cycle 50% Average voltage - 6V

Interface DC Motor to ZIO pwm = PWM(agent) pwm.set_freq([0], 25) pwm.set_duty([0], 100) pwm.start([0]) pwm.set_duty([0], 50) pwm.set_duty([0], 25) D S

Temperature Sensor Temperature Sensors Resistive Sensors Non-ratiometric Sensors I2C / SPI Sensors I2C kind of very simplified USB connect devices to CPU EEPROMs, RTCs, Accelerometers, Sensors ...

I2C Bus

Temperature Sensor i2c = I2C(agent) i2c.config(100) while True: temp = i2c.read(0x48, 1) print temp[0] time.sleep(1)

Demo Projects Laser Pointer Presentation Control Light Bulb Control

Laser Pointer Demo Control presentation with input from the laser pointer. ZIO + LDR + Laser Pointer + Software Magic User shines laser on the LDR Software detects drop in the input voltage Software generates a key (Space) to active window (the presentation)

Controlling a Light Bulb

Controlling a Light Bulb (Contd.) Relay is a mechanical switch controlled by a electro magnet If Vin = 0V then bulb turns off If Vin = 5V then bulb turns on

Questions

Credits Zilogic Team: Mr. PG and Mr. Kannan Demo boards, Add-ons, Setup Software Tools Dia Open Office