element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • 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
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • 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
  • Settings
STEM Projects
  • Learn
  • Learning Center
  • STEM Academy
  • STEM Projects
  • More
  • Cancel
STEM Projects
Blog Book Carrying Robot #8 Trials and future development
  • Blog
  • Forum
  • Documents
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join STEM Projects to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: mohanedessam
  • Date Created: 8 Sep 2015 4:37 AM Date Created
  • Views 1168 views
  • Likes 3 likes
  • Comments 4 comments
  • pwm_controller
  • robot_trial
  • image_processing
  • vectorization_matlab
  • teachers_pet_robotics_design_challenge
  • teachers_pet
  • matlab_raspberry_pi
  • future_development
  • raspberry-pi
  • matlab
  • teachers pet robotics design challenge
  • robot_tr
  • debugging
  • digital_imaging
  • book_carrying_robot
  • pid_controller
  • parallel_for
  • simulink
  • mex_function
Related
Recommended

Book Carrying Robot #8 Trials and future development

mohanedessam
mohanedessam
8 Sep 2015

I described all aspects of my software and hardware design in my previous post.

 

in this post I will just show some of my trials, comment on them, and suggest possible future development.

the path is made to be a bit noisy (not so straight) to show that the robot is still able to accommodate for some path glitches.

 

the Robot was able to follow its miniaturized path correctly for some trials:

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

 

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

 

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

 

 


However, other trials had some errors:

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

 

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

 

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

 

Of course the design has a lot of possible enhancements and room for development:

1- replacing the Relay circuits with motor drivers to decrease the response time

2- using Raspberry PI PWM pin, and software PWM to control the motor speeds independently from each other, this allows modification of movement direction using the two motors differential speeds; this gives much more accuracy and much better response time compared to the ON/OFF approach. 

3- make use of MATLAB control systems to control the motors speeds and the robot direction for better response and accuracy; such as PID controllers.

4- enhance the main function code processing time by:

     1- using mex functions (C-language)

     2- vectorization of the code

     3- use more toolbox functions as opposed to written scripts

  • Sign in to reply

Top Comments

  • balearicdynamics
    balearicdynamics over 10 years ago +1
    Nice project. I noticed of it yesterday but until this morning there was no way to see the videos I have an hypothesis about the errors. Maybe that the image processing the path works faster (simplified…
Parents
  • balearicdynamics
    balearicdynamics over 10 years ago

    Nice project.

     

    I noticed of it yesterday but until this morning there was no way to see the videos image

     

    I have an hypothesis about the errors. Maybe that the image processing the path works faster (simplified cases of the algorithm) when there is a straight line to follow instead of a curve. As the path start coming more complex the processing part for movements feedback comes slow generating a sort of progressive derivative behaviour. Maybe the solution is to work with a variable speed, based on the complexity of the algorithm ?

     

    Enrico

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • mohanedessam
    mohanedessam over 10 years ago in reply to balearicdynamics

    exactly as you said, it's a common problem caused by the delay in processing and movement response, because you can see that the robot responds to the images a bit later; so as you said we should try to increase the speed of the image processing part, and also increase the motor response by continuously changing the motor speeds to avoid this overshoot that we see in the errors; of course if we can implement a PID or PI controller we can improve a lot but this still needs a good manipulated variable (motor speeds) which I don't currently control.

     

    for the straight parts of the path I have increased the tolerance of the image processing response, so it won't respond to small variations in the path position, however if I decrease the tolerance it will still have this oscillatory behaviour noticed in the curves.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
Comment
  • mohanedessam
    mohanedessam over 10 years ago in reply to balearicdynamics

    exactly as you said, it's a common problem caused by the delay in processing and movement response, because you can see that the robot responds to the images a bit later; so as you said we should try to increase the speed of the image processing part, and also increase the motor response by continuously changing the motor speeds to avoid this overshoot that we see in the errors; of course if we can implement a PID or PI controller we can improve a lot but this still needs a good manipulated variable (motor speeds) which I don't currently control.

     

    for the straight parts of the path I have increased the tolerance of the image processing response, so it won't respond to small variations in the path position, however if I decrease the tolerance it will still have this oscillatory behaviour noticed in the curves.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
Children
No Data
element14 Community

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 © 2025 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

  • X
  • Facebook
  • linkedin
  • YouTube