Saturday, 19 December 2015

Magnetic Encoders

Robbie is now fully functional again after his computer problems the reason the arms missed commands was due to the controllers resetting. after I supplied power to the USB hubs every thing worked as required.
To increase the accuracy of the arm I started replacing the potentiometers with magnetic encoders to fit the new encoders required a few modification to the gearbox, I incorporated a bearing in the top of the gearbox and a mount for the magnet in the drive gear plus a few extra tweaks to increase the strength of the assembly not all modification will be fitted at the same time some will wait until the next major rebuild

Moveit Update
Robbie's moveit configuration is working again accuracy is 15 cm not very good but magnetic encoders will help plus a better calibration. Obstacle avoidance suffers because planning only just misses the obstacles. Robbie now has a point at node where he will point to a published target pose.

Face recognition
We are now running the COB face recognition package this works well in daylight but the garage is to dark Robbie makes a few errors, I need to add more lights. The AI will say Hello when he first recognises a face then after 5 minutes he will just say Hi. The name of the recognised face is returned to the chat bot so he knows who he is talking to

Object recognition
will recognise a pre programmed object but wont learn a new object because ECTO requires direct access to the kinect driver Freenect uses a different driver and Openni will not work under indigo
2d recognition, shift and surf and not included in the opencv package so its very flaky

Navigation
Increasing the Global inflation will make Robbie plan further away from obstacles.

Autonomous operation
shutdown command will not work when Robbie is started using robot upstart also depth registered points from the top kinect will not always work unless something uses it straight away the lower kinect has the point cloud to laser scan and gives no trouble. I will start face recognition on start up and see if it remains stable. We haven't had any jitters or strange events since we started using the powered hubs for the arduinos. The current high temperatures are causing a few resets I need a bigger fan and more vents in the CPU bay

Robbie's Emotion system
has been turned off for the moment since he spent most of the time bored and kept quoting a markovian chain from Sun Tzu. It needs a lot more configuration and thought but its fun for a while

As the design of Robbie matures I'm starting to add covers to hide the wires and keep dust off electronics but this has induce a few extra problems
  1. Heat build up
    more fans need to be included in the design
  2. striped out threads
    printed PLA and MDF wont hold a thread for very long so now I will add M3 threaded inserts and M4 rivnuts to the structure




25 comments:

  1. Which programming language should I learn first to program robots?
    drone

    ReplyDelete
  2. I like to use python for higher level functions
    and C for the arduinos

    ReplyDelete
  3. Thanks for sharing info. Keep up the good work...We hope you will visit our blog often as we discuss topics of interest to you
    Battery connections

    ReplyDelete
  4. Thanks Peter, seems you really know what you are doing there :D

    By the way, I don't have (still) an InMoov, but im very courious with what you wrote for object recognizion.
    Can you explain how do you record a new object that InMoov can detect?
    I used OpenCV before and worked with classifiers for it.
    On our lab it took couple of days to even one week for some classifiers to be created.
    How does Kinnect achieve this? also generates classifiers? But seems much faster.

    Thanks for your work!

    Keep it up!

    ReplyDelete
    Replies
    1. The ros ork wiki has a good description on how to train objects which works with ros hydro and openni drivers. The trained objects are stored in a data base. I only need 2 object at the moment for grasping.

      Delete
    2. Thanks lot, will dig into the wiki :D

      Delete
  5. which microcontroller you used

    ReplyDelete
    Replies
    1. 1 arduino Due to control 2 motors and 3 servos
      5 arduino pro mini for upper joints
      1 arduino mega for the drive base
      and a USB dynamixel for 9 AX12a servos

      Delete
  6. I really loved reading your thoughts, obviously you know what are you talking about! Your site is so easy to use too, I’ve bookmark it in my folder
    High Voltage EPROM Man

    ReplyDelete
  7. Good information and great post.  I like the website, and am sure to keep returning.
    Phantom 4 battery

    ReplyDelete
  8. Peter hi there! Nice to know the pot error when moving your InMoov.

    Please, could you provide wich magnetic encoders do you use and how well is the precision you obtain??

    I was looking at this encoders https://www.pololu.com/product/2598
    but still don't know the difference between a good magnetic encoder an a trash mag encod.

    Also Peter, if you could tell if you did use of any library with arduino to preperly map the encoder??

    Thanks a lot, really, keep it up!

    ReplyDelete
  9. The encoders are as5045 or as5040
    https://github.com/DashZhang/AS5045 is the library I use
    thingiverse has a example board
    the accuracy is about 0.1 degree
    if you look at the clicks per revolution the pololu is 12 the AS5045 is about 1000 if i remember correctly

    ReplyDelete
  10. haha so man, that boards are hand made by you right? XD how did you manage to put that damn magnet so well placed...and then use the ic to tap it? nuts work!, didn't realize it first moment. Only seem to need 3 capacitors right? Will surely try this later on

    Becoming ur fan XP

    ReplyDelete
  11. I designed the boards but they were professionally made. The IC is centred on the pad by the surface tension of the solder, one of the advantage of surface mount components

    ReplyDelete
  12. This comment has been removed by the author.

    ReplyDelete
  13. Thank you so much for this blog. It seems amazing but I feel like I have learned many of these lessons the hard way. It is nice to see.
    Robot programming

    ReplyDelete
  14. Thanks for sharing the useful information. It was really amazing. Thanks for sharing. Keep sharing.
    with regards
    How to learn robotics



    ReplyDelete
  15. No doubt your blog have a very nice and interesting information about the Drone Accessories well done.
    Photography Drones

    ReplyDelete
  16. Your blog have allot of detail about the drone video service and i agree with your all information.
    aerial video service

    ReplyDelete
  17. ร้อยไหม
    ร้อยไหมปรับรูปหน้า ปรับรูปหน้าที่ไหไนดี ร้อยไหมที่แหน่งใด











    ดี? กังนัมสถานพยาบาล



    เป็น



    คำตอบไม่ว่าจะเป็น ร้อยไหมหน้าเรียว เป็นวีไลน์แบบประเทศเกาหลี



    ด้วยไหมก้าง



    ให้ท่าน



    งาม



    แบบประเทศเกาหลี



    ลดอายุ หน้าเด็ก ไม่เจ็บ ไม่บอบช้ำ



    ไม่บวม หน้าเป็นวีเชฟ ลดเหนียง เหนียงกระชับสมปรารถนา




    ร้อยไหมก้างปลา
    ร้อยไหม ปรับรูปหน้า

    ReplyDelete
  18. Hi , thanks for sharing your information.The insights are really helpful and informative.
    Robotics in Coimbatore
    Learn robotics online

    ReplyDelete