SlideShare una empresa de Scribd logo
1 de 27
Arduino Robotics Workshop
          Day 2
          Sudar Muthu (@sudarmuthu)
   http://hardwarefun.com/arduino-workshop
             http://github.com/sudar
What we have seen so far?


           Basics of Robotics
           Using Breadboard
           Digital and Analog I/P and O/P
           Serial Communication
           Controlling DC Motors
           Assembled the robot
           Made it run

http://hardwarefun.com              2
Today we will see..


           Varying the speed of the motor
           Play some tunes using the buzzer
           How IR works
           Making use of IR to find obstacles
           Make the bot avoid strangers
           Making it autonomous
           Some Advanced stuff

http://hardwarefun.com              3
Varying the speed of the motor
                 using PWM



http://hardwarefun.com   4
Playing tones in the buzzer




http://hardwarefun.com    5
Playing sound


        We can generate a square wave at specified frequency
        using tone() function

        Usage:

        tone(pin, frequency, duration)



http://hardwarefun.com             6
Teaching robot to avoid strangers


  Two IR LED’s. One receiver, one transmitter
  Both face the same direction
  Keep transmitting IR waves
  If receiver receives waves, then there is a obstacle
  Otherwise keep moving
Let’s see some code




http://hardwarefun.com            8
Let’s get some food 




http://hardwarefun.com        9
What are the limitations that
             we have faced so far?



http://hardwarefun.com   10
Using Delay




http://hardwarefun.com        11
Issues with delay


           Your microcontroller is going to sleep
           You can’t read or write while in delay
           Eg: You can’t detect an obstacle when the bot is
           making a turn




http://hardwarefun.com              12
How to fix it?




http://hardwarefun.com         13
Using Timer library
                         https://github.com/JChristensen/Timer




http://hardwarefun.com                    14
If we don’t read the pin, then
                we miss the value



http://hardwarefun.com   15
Methods in Timer library


           every(long period, callback);
           after(long duration, callback);
           oscillate(int pin, long period, int startingValue);
           pulse(int pin, long period, int startingValue);
           update();




http://hardwarefun.com                16
Interrupts




http://hardwarefun.com       17
Hardware support


           Pin 2 and 3
           Supports LOW, CHANGE, RISING, FALLING
           No software support is needed
           Can be removed as well




http://hardwarefun.com           18
Let’s see some code




http://hardwarefun.com            19
What if we need it on other
                        pins?



http://hardwarefun.com    20
Software Interrupts
                         http://code.google.com/p/arduino-pinchangeint/




http://hardwarefun.com                         21
Can be used on any pin




http://hardwarefun.com       22
Let’s see some code




http://hardwarefun.com            23
Some ideas to try


           Making your robot follow a line
           Making your robot stay in a table
           Replace IR with ultrasound sensor
           Control the bot remotely using RF




http://hardwarefun.com             24
Things I have tried


           Controlled it using Android phone
           Controlled it using JavaScript and WebSockets
           Controlled it using Bluetooth
           Controlled it using RF
           Added a missile launcher to it

                           https://github.com/sudar

http://hardwarefun.com                25
Links

 Arduino – http://arduino.cc
 Asimi – A simple bot using Arduino
  http://hardwarefun.com/project/asimi
 Getting started with hardware programming
  http://hardwarefun.com/tutorials/getting-started-with-
  hardware-programming
 Getting started with Arduino
  http://hardwarefun.com/tutorials/getting-started-with-
  arduino-and-avr
Questions
          Thank You

            Sudar Muthu (@sudarmuthu)
    http://hardwarefun.com/arduino-workshop
https://github.com/sudar/arduino-robotics-workshop

Más contenido relacionado

La actualidad más candente

Getting Started With Arduino How To Build A Twitter Monitoring Alertuino
Getting Started With Arduino   How To Build A Twitter Monitoring AlertuinoGetting Started With Arduino   How To Build A Twitter Monitoring Alertuino
Getting Started With Arduino How To Build A Twitter Monitoring AlertuinoAdrian McEwen
 
Using arduino and raspberry pi for internet of things
Using arduino and raspberry pi for internet of thingsUsing arduino and raspberry pi for internet of things
Using arduino and raspberry pi for internet of thingsSudar Muthu
 
Lets make robots
Lets make robotsLets make robots
Lets make robotsSudar Muthu
 
Arduino technical session 1
Arduino technical session 1Arduino technical session 1
Arduino technical session 1Audiomas Soni
 
Arduino Microcontroller
Arduino MicrocontrollerArduino Microcontroller
Arduino MicrocontrollerShyam Mohan
 
Arduino presentation by_warishusain
Arduino presentation by_warishusainArduino presentation by_warishusain
Arduino presentation by_warishusainstudent
 
Introduction to Arduino Hardware and Programming
Introduction to Arduino Hardware and ProgrammingIntroduction to Arduino Hardware and Programming
Introduction to Arduino Hardware and ProgrammingEmmanuel Obot
 
Introducing... Arduino
Introducing... ArduinoIntroducing... Arduino
Introducing... Arduinozvikapika
 
Capabilities of Arduino (including Due)
Capabilities of Arduino (including Due)Capabilities of Arduino (including Due)
Capabilities of Arduino (including Due)Sudar Muthu
 
Introduction to Arduino Programming
Introduction to Arduino ProgrammingIntroduction to Arduino Programming
Introduction to Arduino ProgrammingJames Lewis
 
Arduino Lecture 1 - Introducing the Arduino
Arduino Lecture 1 - Introducing the ArduinoArduino Lecture 1 - Introducing the Arduino
Arduino Lecture 1 - Introducing the ArduinoEoin Brazil
 
Introduction to Arduino and Circuits
Introduction to Arduino and CircuitsIntroduction to Arduino and Circuits
Introduction to Arduino and CircuitsJason Griffey
 
Introduction to the Arduino
Introduction to the ArduinoIntroduction to the Arduino
Introduction to the ArduinoWingston
 
Intro to Hardware Programming with the Arduino Uno
Intro to Hardware Programming with the Arduino UnoIntro to Hardware Programming with the Arduino Uno
Intro to Hardware Programming with the Arduino UnoVui Nguyen
 

La actualidad más candente (20)

Getting Started With Arduino How To Build A Twitter Monitoring Alertuino
Getting Started With Arduino   How To Build A Twitter Monitoring AlertuinoGetting Started With Arduino   How To Build A Twitter Monitoring Alertuino
Getting Started With Arduino How To Build A Twitter Monitoring Alertuino
 
Using arduino and raspberry pi for internet of things
Using arduino and raspberry pi for internet of thingsUsing arduino and raspberry pi for internet of things
Using arduino and raspberry pi for internet of things
 
Lets make robots
Lets make robotsLets make robots
Lets make robots
 
Arduino Uno Pin Description
Arduino Uno Pin DescriptionArduino Uno Pin Description
Arduino Uno Pin Description
 
Different Arduino Boards
Different Arduino BoardsDifferent Arduino Boards
Different Arduino Boards
 
Arduino technical session 1
Arduino technical session 1Arduino technical session 1
Arduino technical session 1
 
Arduino Microcontroller
Arduino MicrocontrollerArduino Microcontroller
Arduino Microcontroller
 
Arduino presentation by_warishusain
Arduino presentation by_warishusainArduino presentation by_warishusain
Arduino presentation by_warishusain
 
Arduino uno
Arduino unoArduino uno
Arduino uno
 
Introduction to Arduino Hardware and Programming
Introduction to Arduino Hardware and ProgrammingIntroduction to Arduino Hardware and Programming
Introduction to Arduino Hardware and Programming
 
Introducing... Arduino
Introducing... ArduinoIntroducing... Arduino
Introducing... Arduino
 
Capabilities of Arduino (including Due)
Capabilities of Arduino (including Due)Capabilities of Arduino (including Due)
Capabilities of Arduino (including Due)
 
PPT ON Arduino
PPT ON Arduino PPT ON Arduino
PPT ON Arduino
 
Introduction to Arduino Programming
Introduction to Arduino ProgrammingIntroduction to Arduino Programming
Introduction to Arduino Programming
 
Arduino Lecture 1 - Introducing the Arduino
Arduino Lecture 1 - Introducing the ArduinoArduino Lecture 1 - Introducing the Arduino
Arduino Lecture 1 - Introducing the Arduino
 
Introduction to Arduino and Circuits
Introduction to Arduino and CircuitsIntroduction to Arduino and Circuits
Introduction to Arduino and Circuits
 
Introduction to the Arduino
Introduction to the ArduinoIntroduction to the Arduino
Introduction to the Arduino
 
Introduction to Arduino
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduino
 
IoT with Arduino
IoT with ArduinoIoT with Arduino
IoT with Arduino
 
Intro to Hardware Programming with the Arduino Uno
Intro to Hardware Programming with the Arduino UnoIntro to Hardware Programming with the Arduino Uno
Intro to Hardware Programming with the Arduino Uno
 

Destacado (20)

Toolchain
ToolchainToolchain
Toolchain
 
Introduction to BeagleBoard-xM
Introduction to BeagleBoard-xMIntroduction to BeagleBoard-xM
Introduction to BeagleBoard-xM
 
Embedded Applications
Embedded ApplicationsEmbedded Applications
Embedded Applications
 
Introduction to BeagleBone Black
Introduction to BeagleBone BlackIntroduction to BeagleBone Black
Introduction to BeagleBone Black
 
Introduction to Embedded Systems
Introduction to Embedded SystemsIntroduction to Embedded Systems
Introduction to Embedded Systems
 
BeagleBoard-xM Booting Process
BeagleBoard-xM Booting ProcessBeagleBoard-xM Booting Process
BeagleBoard-xM Booting Process
 
BeagleBone Black Booting Process
BeagleBone Black Booting ProcessBeagleBone Black Booting Process
BeagleBone Black Booting Process
 
Kernel Programming
Kernel ProgrammingKernel Programming
Kernel Programming
 
Low-level Accesses
Low-level AccessesLow-level Accesses
Low-level Accesses
 
BeagleBone Black Bootloaders
BeagleBone Black BootloadersBeagleBone Black Bootloaders
BeagleBone Black Bootloaders
 
BeagleBoard-xM Bootloaders
BeagleBoard-xM BootloadersBeagleBoard-xM Bootloaders
BeagleBoard-xM Bootloaders
 
File Systems
File SystemsFile Systems
File Systems
 
Linux Kernel Overview
Linux Kernel OverviewLinux Kernel Overview
Linux Kernel Overview
 
Linux Porting
Linux PortingLinux Porting
Linux Porting
 
SPI Drivers
SPI DriversSPI Drivers
SPI Drivers
 
File System Modules
File System ModulesFile System Modules
File System Modules
 
I2C Drivers
I2C DriversI2C Drivers
I2C Drivers
 
Serial Drivers
Serial DriversSerial Drivers
Serial Drivers
 
Platform Drivers
Platform DriversPlatform Drivers
Platform Drivers
 
Block Drivers
Block DriversBlock Drivers
Block Drivers
 

Similar a Arduino Robotics Workshop Day 2

Intro to arduino
Intro to arduinoIntro to arduino
Intro to arduinoJosé Faria
 
Controlling robots using javascript
Controlling robots using javascriptControlling robots using javascript
Controlling robots using javascriptSudar Muthu
 
Advanced view arduino projects list use arduino for projects (2)
Advanced view arduino projects list   use arduino for projects (2)Advanced view arduino projects list   use arduino for projects (2)
Advanced view arduino projects list use arduino for projects (2)WiseNaeem
 
Advanced View Arduino Projects List - Use Arduino for Projects 5.pdf
Advanced View Arduino Projects List - Use Arduino for Projects 5.pdfAdvanced View Arduino Projects List - Use Arduino for Projects 5.pdf
Advanced View Arduino Projects List - Use Arduino for Projects 5.pdfWiseNaeem
 
Advanced View Arduino Projects List - Use Arduino for Projects 4.pdf
Advanced View Arduino Projects List - Use Arduino for Projects 4.pdfAdvanced View Arduino Projects List - Use Arduino for Projects 4.pdf
Advanced View Arduino Projects List - Use Arduino for Projects 4.pdfWiseNaeem
 
When a robot is smart enough?
When a robot is smart enough?When a robot is smart enough?
When a robot is smart enough?Tomáš Jukin
 
HUMAN RESCUE ROBOT (PROTOTYPE)
HUMAN RESCUE ROBOT (PROTOTYPE)HUMAN RESCUE ROBOT (PROTOTYPE)
HUMAN RESCUE ROBOT (PROTOTYPE)Shahrokh Ahmad
 
Mindstorms Arduino En Phidgets
Mindstorms Arduino En PhidgetsMindstorms Arduino En Phidgets
Mindstorms Arduino En Phidgetssiertwijnia
 
Mindstorms Arduino En Phidgets
Mindstorms Arduino En PhidgetsMindstorms Arduino En Phidgets
Mindstorms Arduino En Phidgetsprotospace
 
Arduino-Workshop-4.pptx
Arduino-Workshop-4.pptxArduino-Workshop-4.pptx
Arduino-Workshop-4.pptxHebaEng
 
comenzando con MATLAB y Simulink para Arduino
comenzando con MATLAB y Simulink para Arduinocomenzando con MATLAB y Simulink para Arduino
comenzando con MATLAB y Simulink para ArduinoSANTIAGO PABLO ALBERTO
 
Programming the Real World: Javascript for Makers
Programming the Real World: Javascript for MakersProgramming the Real World: Javascript for Makers
Programming the Real World: Javascript for Makerspchristensen
 
Multifunctional Robot (PPT).pptx
Multifunctional Robot (PPT).pptxMultifunctional Robot (PPT).pptx
Multifunctional Robot (PPT).pptxRuthviq
 
Advanced View of Atmega Microcontroller Projects List - ATMega32 AVR.pdf
Advanced View of Atmega Microcontroller Projects List - ATMega32 AVR.pdfAdvanced View of Atmega Microcontroller Projects List - ATMega32 AVR.pdf
Advanced View of Atmega Microcontroller Projects List - ATMega32 AVR.pdfWiseNaeem
 

Similar a Arduino Robotics Workshop Day 2 (20)

Intro to arduino
Intro to arduinoIntro to arduino
Intro to arduino
 
Controlling robots using javascript
Controlling robots using javascriptControlling robots using javascript
Controlling robots using javascript
 
503
503503
503
 
1404 Robotics
1404 Robotics1404 Robotics
1404 Robotics
 
Advanced view arduino projects list use arduino for projects (2)
Advanced view arduino projects list   use arduino for projects (2)Advanced view arduino projects list   use arduino for projects (2)
Advanced view arduino projects list use arduino for projects (2)
 
Arduino_Project_Report
Arduino_Project_ReportArduino_Project_Report
Arduino_Project_Report
 
Advanced View Arduino Projects List - Use Arduino for Projects 5.pdf
Advanced View Arduino Projects List - Use Arduino for Projects 5.pdfAdvanced View Arduino Projects List - Use Arduino for Projects 5.pdf
Advanced View Arduino Projects List - Use Arduino for Projects 5.pdf
 
Advanced View Arduino Projects List - Use Arduino for Projects 4.pdf
Advanced View Arduino Projects List - Use Arduino for Projects 4.pdfAdvanced View Arduino Projects List - Use Arduino for Projects 4.pdf
Advanced View Arduino Projects List - Use Arduino for Projects 4.pdf
 
When a robot is smart enough?
When a robot is smart enough?When a robot is smart enough?
When a robot is smart enough?
 
HUMAN RESCUE ROBOT (PROTOTYPE)
HUMAN RESCUE ROBOT (PROTOTYPE)HUMAN RESCUE ROBOT (PROTOTYPE)
HUMAN RESCUE ROBOT (PROTOTYPE)
 
Mindstorms Arduino En Phidgets
Mindstorms Arduino En PhidgetsMindstorms Arduino En Phidgets
Mindstorms Arduino En Phidgets
 
Mindstorms Arduino En Phidgets
Mindstorms Arduino En PhidgetsMindstorms Arduino En Phidgets
Mindstorms Arduino En Phidgets
 
DEBUGGING THE MOBILE WEB
DEBUGGING THE MOBILE WEBDEBUGGING THE MOBILE WEB
DEBUGGING THE MOBILE WEB
 
Arduino-Workshop-4.pptx
Arduino-Workshop-4.pptxArduino-Workshop-4.pptx
Arduino-Workshop-4.pptx
 
Arduino-Workshop-4.pptx
Arduino-Workshop-4.pptxArduino-Workshop-4.pptx
Arduino-Workshop-4.pptx
 
Modular remote
Modular remoteModular remote
Modular remote
 
comenzando con MATLAB y Simulink para Arduino
comenzando con MATLAB y Simulink para Arduinocomenzando con MATLAB y Simulink para Arduino
comenzando con MATLAB y Simulink para Arduino
 
Programming the Real World: Javascript for Makers
Programming the Real World: Javascript for MakersProgramming the Real World: Javascript for Makers
Programming the Real World: Javascript for Makers
 
Multifunctional Robot (PPT).pptx
Multifunctional Robot (PPT).pptxMultifunctional Robot (PPT).pptx
Multifunctional Robot (PPT).pptx
 
Advanced View of Atmega Microcontroller Projects List - ATMega32 AVR.pdf
Advanced View of Atmega Microcontroller Projects List - ATMega32 AVR.pdfAdvanced View of Atmega Microcontroller Projects List - ATMega32 AVR.pdf
Advanced View of Atmega Microcontroller Projects List - ATMega32 AVR.pdf
 

Más de Sudar Muthu

A quick preview of WP CLI - Chennai WordPress Meetup
A quick preview of WP CLI - Chennai WordPress MeetupA quick preview of WP CLI - Chennai WordPress Meetup
A quick preview of WP CLI - Chennai WordPress MeetupSudar Muthu
 
WordPress Developer tools
WordPress Developer toolsWordPress Developer tools
WordPress Developer toolsSudar Muthu
 
WordPress Developer Tools to increase productivity
WordPress Developer Tools to increase productivityWordPress Developer Tools to increase productivity
WordPress Developer Tools to increase productivitySudar Muthu
 
Unit testing for WordPress
Unit testing for WordPressUnit testing for WordPress
Unit testing for WordPressSudar Muthu
 
Unit testing in php
Unit testing in phpUnit testing in php
Unit testing in phpSudar Muthu
 
How arduino helped me in life
How arduino helped me in lifeHow arduino helped me in life
How arduino helped me in lifeSudar Muthu
 
Having fun with hardware
Having fun with hardwareHaving fun with hardware
Having fun with hardwareSudar Muthu
 
Python in raspberry pi
Python in raspberry piPython in raspberry pi
Python in raspberry piSudar Muthu
 
Hack 101 at IIT Kanpur
Hack 101 at IIT KanpurHack 101 at IIT Kanpur
Hack 101 at IIT KanpurSudar Muthu
 
PureCSS open hack 2013
PureCSS open hack 2013PureCSS open hack 2013
PureCSS open hack 2013Sudar Muthu
 
Hands on Hadoop and pig
Hands on Hadoop and pigHands on Hadoop and pig
Hands on Hadoop and pigSudar Muthu
 
Picture perfect hacks with flickr API
Picture perfect hacks with flickr APIPicture perfect hacks with flickr API
Picture perfect hacks with flickr APISudar Muthu
 
Capabilities of Arduino
Capabilities of ArduinoCapabilities of Arduino
Capabilities of ArduinoSudar Muthu
 
Introduction to node.js GDD
Introduction to node.js GDDIntroduction to node.js GDD
Introduction to node.js GDDSudar Muthu
 
Using Javascript in today's world
Using Javascript in today's worldUsing Javascript in today's world
Using Javascript in today's worldSudar Muthu
 
Hack u yql-iit-delhi
Hack u yql-iit-delhiHack u yql-iit-delhi
Hack u yql-iit-delhiSudar Muthu
 
A slightly advanced introduction to node.js
A slightly advanced introduction to node.jsA slightly advanced introduction to node.js
A slightly advanced introduction to node.jsSudar Muthu
 
YAP - HackU 2011
YAP - HackU 2011YAP - HackU 2011
YAP - HackU 2011Sudar Muthu
 

Más de Sudar Muthu (20)

A quick preview of WP CLI - Chennai WordPress Meetup
A quick preview of WP CLI - Chennai WordPress MeetupA quick preview of WP CLI - Chennai WordPress Meetup
A quick preview of WP CLI - Chennai WordPress Meetup
 
WordPress Developer tools
WordPress Developer toolsWordPress Developer tools
WordPress Developer tools
 
WordPress Developer Tools to increase productivity
WordPress Developer Tools to increase productivityWordPress Developer Tools to increase productivity
WordPress Developer Tools to increase productivity
 
Unit testing for WordPress
Unit testing for WordPressUnit testing for WordPress
Unit testing for WordPress
 
Unit testing in php
Unit testing in phpUnit testing in php
Unit testing in php
 
How arduino helped me in life
How arduino helped me in lifeHow arduino helped me in life
How arduino helped me in life
 
Having fun with hardware
Having fun with hardwareHaving fun with hardware
Having fun with hardware
 
Python in raspberry pi
Python in raspberry piPython in raspberry pi
Python in raspberry pi
 
Hack 101 at IIT Kanpur
Hack 101 at IIT KanpurHack 101 at IIT Kanpur
Hack 101 at IIT Kanpur
 
PureCSS open hack 2013
PureCSS open hack 2013PureCSS open hack 2013
PureCSS open hack 2013
 
Pig workshop
Pig workshopPig workshop
Pig workshop
 
Hands on Hadoop and pig
Hands on Hadoop and pigHands on Hadoop and pig
Hands on Hadoop and pig
 
Picture perfect hacks with flickr API
Picture perfect hacks with flickr APIPicture perfect hacks with flickr API
Picture perfect hacks with flickr API
 
Hacking 101
Hacking 101Hacking 101
Hacking 101
 
Capabilities of Arduino
Capabilities of ArduinoCapabilities of Arduino
Capabilities of Arduino
 
Introduction to node.js GDD
Introduction to node.js GDDIntroduction to node.js GDD
Introduction to node.js GDD
 
Using Javascript in today's world
Using Javascript in today's worldUsing Javascript in today's world
Using Javascript in today's world
 
Hack u yql-iit-delhi
Hack u yql-iit-delhiHack u yql-iit-delhi
Hack u yql-iit-delhi
 
A slightly advanced introduction to node.js
A slightly advanced introduction to node.jsA slightly advanced introduction to node.js
A slightly advanced introduction to node.js
 
YAP - HackU 2011
YAP - HackU 2011YAP - HackU 2011
YAP - HackU 2011
 

Último

DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 

Último (20)

DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 

Arduino Robotics Workshop Day 2

  • 1. Arduino Robotics Workshop Day 2 Sudar Muthu (@sudarmuthu) http://hardwarefun.com/arduino-workshop http://github.com/sudar
  • 2. What we have seen so far? Basics of Robotics Using Breadboard Digital and Analog I/P and O/P Serial Communication Controlling DC Motors Assembled the robot Made it run http://hardwarefun.com 2
  • 3. Today we will see.. Varying the speed of the motor Play some tunes using the buzzer How IR works Making use of IR to find obstacles Make the bot avoid strangers Making it autonomous Some Advanced stuff http://hardwarefun.com 3
  • 4. Varying the speed of the motor using PWM http://hardwarefun.com 4
  • 5. Playing tones in the buzzer http://hardwarefun.com 5
  • 6. Playing sound We can generate a square wave at specified frequency using tone() function Usage: tone(pin, frequency, duration) http://hardwarefun.com 6
  • 7. Teaching robot to avoid strangers Two IR LED’s. One receiver, one transmitter Both face the same direction Keep transmitting IR waves If receiver receives waves, then there is a obstacle Otherwise keep moving
  • 8. Let’s see some code http://hardwarefun.com 8
  • 9. Let’s get some food  http://hardwarefun.com 9
  • 10. What are the limitations that we have faced so far? http://hardwarefun.com 10
  • 12. Issues with delay Your microcontroller is going to sleep You can’t read or write while in delay Eg: You can’t detect an obstacle when the bot is making a turn http://hardwarefun.com 12
  • 13. How to fix it? http://hardwarefun.com 13
  • 14. Using Timer library https://github.com/JChristensen/Timer http://hardwarefun.com 14
  • 15. If we don’t read the pin, then we miss the value http://hardwarefun.com 15
  • 16. Methods in Timer library every(long period, callback); after(long duration, callback); oscillate(int pin, long period, int startingValue); pulse(int pin, long period, int startingValue); update(); http://hardwarefun.com 16
  • 18. Hardware support Pin 2 and 3 Supports LOW, CHANGE, RISING, FALLING No software support is needed Can be removed as well http://hardwarefun.com 18
  • 19. Let’s see some code http://hardwarefun.com 19
  • 20. What if we need it on other pins? http://hardwarefun.com 20
  • 21. Software Interrupts http://code.google.com/p/arduino-pinchangeint/ http://hardwarefun.com 21
  • 22. Can be used on any pin http://hardwarefun.com 22
  • 23. Let’s see some code http://hardwarefun.com 23
  • 24. Some ideas to try Making your robot follow a line Making your robot stay in a table Replace IR with ultrasound sensor Control the bot remotely using RF http://hardwarefun.com 24
  • 25. Things I have tried Controlled it using Android phone Controlled it using JavaScript and WebSockets Controlled it using Bluetooth Controlled it using RF Added a missile launcher to it https://github.com/sudar http://hardwarefun.com 25
  • 26. Links  Arduino – http://arduino.cc  Asimi – A simple bot using Arduino http://hardwarefun.com/project/asimi  Getting started with hardware programming http://hardwarefun.com/tutorials/getting-started-with- hardware-programming  Getting started with Arduino http://hardwarefun.com/tutorials/getting-started-with- arduino-and-avr
  • 27. Questions Thank You Sudar Muthu (@sudarmuthu) http://hardwarefun.com/arduino-workshop https://github.com/sudar/arduino-robotics-workshop