element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Members
    Members
    • Benefits of Membership
    • Achievement Levels
    • Members Area
    • Personal Blogs
    • Feedback and Support
    • What's New on element14
  • Learn
    Learn
    • Learning Center
    • eBooks
    • STEM Academy
    • Webinars, Training and Events
    • More
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • More
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • More
  • Products
    Products
    • Arduino
    • Dev Tools
    • Manufacturers
    • Raspberry Pi
    • RoadTests & Reviews
    • Avnet Boards Community
    • More
  • Store
    Store
    • Visit Your Store
    • Choose Another Store
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
Cypress Kits
  • Products
  • Dev Tools
  • Cypress Kits
  • More
  • Cancel
Cypress Kits
Forum PSoC 4 Pioneer Kit Community Project#047 – Obstacle Avoider Robot
  • Blog
  • Forum
  • Documents
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Cypress Kits requires membership for participation - click to join
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • Replies 3 replies
  • Subscribers 12 subscribers
  • Views 282 views
  • Users 0 members are here
  • 100projects
Related

PSoC 4 Pioneer Kit Community Project#047 – Obstacle Avoider Robot

cy.wbz
cy.wbz over 8 years ago

Hello!

 

Today’s example is building on our earlier robot examples last week. We will be showcasing an obstacle avoider robot. Not all robots are battle tanks so we don’t want our bots to get hurt! This example will using the PSoC 4 to detect objects ahead of the robot and adjust its course to avoid the obstacle. In this example we are using environmental feedbacks to drive the motor operation. For this example we will be using the following hardware:

  • PSoC 4 Pioneer Kit
  • ArduMoto shield
  • Custom Robot hardware
  • AA battery pack

 

Forum Post Attachments:

 

At the bottom of this post we are including the following items:

  • Example Project Zip File
  • Zip File of Images
  • Project Schematic
  • Component Configurations

 

Components Used:

 

The user can download the example project at the bottom of this post. The project uses the following list of Creator Components:

  • PWM
  • CyClock
  • Status Register
  • Fractional Frequency Synthesizer
  • D Flip Flop
  • Logic Gates
  • CyPins

 

The components are configured by right clicking on the component in your Top Design schematic view and selecting Configure. Please enable the following selections in the Configuration windows for the listed components above.

 

Firmware Description:

 

The main.c firmware is included in the example project. Please review the commented sections for more details.

 

In this design we are using two IR controls, Transmit and Receive, to detect the proximity of the area around the robot. We then feedback the values we received to control the motors.

 

The robot will read in the output from the TSOP1738 IR sensor. Depending on the value we assign a ‘positioning value’. This value is tested and then initiates an action based on the obstacles. The obstacles can be positioned around the robot (Left, Forward-left, Center, Forward-Right, and Right). Depending on the detected obstacle the robot will perform a different action to avoid the obstacle.

 

Hardware Connections:

 

Please connect the motor shield to the Pioneer kit and connect the battery pack to the motor shield. You will need to connect the motors to the motor shield and wire up the IR circuitry.

The prototype area of motor driver shield is used for soldering 3 IR LEDs, 3 IR receivers which act as proximity sensors. It takes advantage of PSoC4 UDBs to implement transmitter modulation waveforms for TSOP1738 IR receiver. The UDB circuit switches IR LED on and off in a manner that three IR LED - Receiver pairs can work simultaneously as proximity sensor with minimal current consumption.

 

TSOP1738 - 3no.s, IR LEDs - 3no.s, 220Ω resistor for LED current limiting and 1uF capacitor for power supply filtering across TSOP1738.


Test Your Project:

 

Set up your obstacle course and program the Pioneer board. Set the robot down on the course and start the project.

 

I hope this example can help you in your design.

 

Best,

Matt

Attachments:
8867.Project Images.zip
Obstacle AvoiderRobot.zip
  • Reply
  • Cancel
  • Cancel
  • cy.wbz
    cy.wbz over 8 years ago

    Hello!

     

    I've attahced a video of the robot in action.

     

    You don't have permission to edit metadata of this video.
    Edit media
    x
    Upload Preview

     

    Thanks,

    Matthew Buza

    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • jesusantoniocar
    jesusantoniocar over 8 years ago in reply to cy.wbz

    Hello Matt.

    Accurate position estimation is one of the major problems when working with mobile autonomous robots and a key component of them. Most of the times, there are three phases that comprise the movement sequence of a mobile robot (not only autonomous robots): localization, path planning, and path execution.

     

    Great project to start applications in positioning techniques of robots.

     

    best regards,

     

    Jesus Antonio.

    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
  • cy.wbz
    cy.wbz over 8 years ago in reply to cy.wbz

    Hello!

     

    Thanks Jesus! I just wanted to note that the cable seen in the video is the USB connection to the Pioneer kit. This is how the P4 is being powered. You can rig up the battery source to power both the motors and the Pioneer kit. You'll just need to add another regulator and power the Pioneer kit through the USB conenctor or the two jumpers next to the USB cable. Internally we've got some Lithium battery packs that have a USB connector wired up to the power and ground.

     

    Thanks,

    Matt

    • Cancel
    • Up 0 Down
    • Reply
    • Cancel
Element14

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2022 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • Facebook
  • Twitter
  • linkedin
  • YouTube