close-circle
Close
0%
0%

ODrive - High performance motor control

Hobby brushless motors are incredibly cheap and powerful. However we need a way to make robots out of them. ODrive is that way.

Similar projects worth following
Stepper motors are ubiquitous in hobby robotics projects: If you make a robotics or automation project today, it is very likely you will use them. Almost all DIY projects from 3D printers and CNC mills, to air hockey and juggling robots use them. However in industrial automation, brushless servomotors have taken over, and it's clear why: They don't lose steps, are much more powerful, efficient, and silent.

However, brushless motors are not unique to expensive industrial automation equipment. In fact, you can get some very powerful and cheap motors at hobby shops. The electronics to drive these motors are also dirt cheap. So how come virtually no non-industrial automation systems use them?

To be honest, I have no idea. Seriously, a driver that allows this should clearly exist.
But since it didn't, I decided to make one.

And you are invited!
This project is open source, both in hardware and software, and I warmly welcome anyone who wants to join.

Next alpha batch ready soon

Sign up to the Newsletter to be notified when the v3.3 boards are ready.

Key specs:

  • 2 motor channels, designed for >100A peak current.
  • 1 DC-DC converter channel
    • For powering the system with an arbitrary voltage power supply, or
    • Use of a brake resistor
  • 24V bus voltage
  • USB, CAN, UART, PWM, and step/dir interface (read more below)
  • Encoder feedback for arbitrarily precise movements
  • Supports power regeneration
  • Use of a high power density Li-Po battery means you can achieve >1kW peak power output with only a modest power supply.
  • It will feature various optimal control strategies and motion profiles.
  • Permissive licence on both hardware and software: You use this project in anything you like, even commercial products (as long as you attribute this project's contributors).

Demos

The design is based on two earlier prototypes.

Here are some very simple demos with v2. The peak power output in these tests were only about 60W. The new version (v3) will be able to deliver much more power.

Below is a demo with v1. The mass being moved is 3kg, and the peak power was about 200W. The noise is not from the motor, but from my poor mechanical design which means that the belt teeth rubs against the idler pulley edge.


Join the discussion!

Check out the ODrive Community.

Stay up to date


Motors

Check out the ODrive motor guide. You can also read this post about outrunner motors.

Interfaces

  • USB Serial port -- PC, BeagleBone, RaspberryPi, etc.
  • CAN -- CANOpen and CiA 402 is a possibility
  • UART -- Arduino, mBed, etc.
  • PWM -- RC Recievers, Arduino, etc.
  • Step/direction -- Existing motion controllers
  • Some general purpose digital and analogue pins

Protocols

  • G-code parser for interfacing with existing automation tools
  • Many types of command modes
    • Goto (position control with trajectory planning)
    • Position commands
    • Velocity command
    • Torque command

Architecture


The drive is designed to be able to deliver incredibly high peak power, more than 1kW per motor channel. However, power supplies that can deliver this kind of power are expensive. Also, when the actuator is being decelerated, there is energy absorbed. Most power supplies do not like having energy dumped back into them.

The solution: Put high-power energy-storage on the DC bus. A battery like this one can deliver around 3kW. These types of batteries also have a fairly high charge rating, and if the regeneration is only over a couple of 100 milliseconds, they can probably handle a fair bit more than specified. Thus, they should be able to handle the full range of regeneration power in most robotics applications.

This means we have a variable voltage DC bus, that fluctuates with the battery's state of charge. So the way we power the system is via a DC-DC converter. There is another upside to this as well: we can use any voltage power supply and just convert it to the bus voltage. I expect most people will use an inexpensive ATX power supply (specifically the 12V rails). In many robotics applications the motion consists of several discrete movements, only some of which are high power. In this case, we can have access to a very high peak power, but only require a very modest power supply.

Another thing that's nice about using a battery for stabilising the DC bus, is that if multiple of these drives reside on the same bus, there is no fighting over the regulation of the bus voltage: a single board can have the DC-DC connected to a PSU, and the rest of the boards in the system can just use the bus. If fact, you can even skip populating the DC-DC on the slave boards.

The system is also capable of using a brake resistor to dump the regenerated energy instead of a battery to absorb it. This is a simpler and possibly safer setup, and is also what the project will use in the first instance, until the battery storage feature is ready.

Applications

So this project is good for some things, but not everything.

You should use this drive in your project...

Read more »

  • Step / Direction Interface

    Oskar Weigl07/18/2017 at 02:40 0 comments

    The first version of the much requested interface for ODrive, step/direction signals, is now ready. If you want to try it out, check these instructions.

    Demo:

    Step/direction is the most common interface used by existing motion controllers to talk to stepper motor drivers. With the support of step/direction, you can use existing motion controllers and let ODrive be a drop-in replacement for the stepper drivers. In the above demo, a TinyG is used, but the signals are the same as used by the Smoothieboard, Rambo, Mach3, RAMPS, well basically all of them.

  • ODrive Robotics, Inc

    Oskar Weigl07/09/2017 at 02:20 2 comments

    ODrive Robotics, Inc has now been incorporated in the state of Delaware.

    This may sound very fancy, but it's actually still just me working on this. But hopefully that will change soon!

    Fundraising and Recruiting

    With the company entity formed, I can now start equity fundraising and give shares in the company in exchange for investment money. Hopefully I can raise enough money to hire another full-time developer. Alternatively I might find someone who is interested in joining as a late-stage co-founder.

    In either case, I hope to grow the headcount to 2 imminently, which should help to speed up development significantly.

    Interest in ODrive v3.3

    Since the sign-up for getting notified when ODrive v3.3 is available opened about 6 weeks ago, there has been an average of almost 4 signups per day. This means that the coming batch of 100 ODrive v3.3's is already oversubscribed. So just a head's up, they may sell out fairly quick once released.

    I'll make sure to send out the notification of when exactly they will be released a couple of days in advance of the release.

    ODrive v3.3 signups over time.

  • ODrive v3.3

    Oskar Weigl06/17/2017 at 20:05 0 comments

    v3.2 ODrives sold out very quickly. I was not planning on manufacturing a new batch until the firmware alpha is over. However, demand for alpha stage hardware has been so high, I decided to do another batch while still in alpha.

    The new boards are expected to arrive in mid July. If you want to be notified as soon as they are available, you can sign up here.

    I took the opportunity to sneak in a couple of minor hardware changes. Below are the changes made, straight from the CHANGELOG:

    • Added
      • Power LED
      • Pads on DC rail, for secondary power connection, on the opposite side of main power connector
    • Changed
      • Fliped LDO and C29 to bot side, for better clearance on top side for enclosure style heatsinking.
      • Changed all screw terminals to 7.62mm pitch
      • Encoder pullup resistance 1k -> 3.3k, to be compatible with 2mA push-pull encoders without desoldering pullups.
    • Removed
      • AUX_V voltage measurement no longer available

    The most significant change is the GPIO Pinout change. This brings about the following possibilities over v3.2:

    • All GPIO pins are now 5V tolerant (on v3.2 and earlier, GPIO 2 and 3 are 3.3V max).
    • Timer peripheral in capture mode on 4 GPIO pins allow:
      • Higher step rates on the step/direction interface.
      • up to 4 channels of PWM input.
    • Two UART interfaces (we had a single RX pin before).
    • We get a 5th GPIO pin. This could be used for anything, but specifically it could be used as an Enable line, which was very highly requested for a "step/dir/step/dir/en" setup.
    • We get 4 Analog capable GPIO pins. This enables the possibility of 2 channels worth of sin/cos encoders.

    • EU ODrives Shipped - Kits Manufacturing

      Oskar Weigl06/07/2017 at 03:56 0 comments

      EU ODrives Shipped

      Two weeks ago the ODrives going outside the EU were shipped. Due to VAT and customs, the shipments going to the EU were routed through Sweden. After being stuck in customs for a long time, finally the non-kit ODrives for this batch have now shipped in the EU too.

      ODrive Kits

      After the motors finally arrived, I have completed the design of the test jigs. I have been manufacturing the pieces, and I'm about to assemble and glue them together. I will also be drilling the 3D printed couplets to get a better tolerance.

      Here are the design files, in case you want to make your own: Onshape Link.

      Kit Manufacturing Pictures and Videos:

      We are making ODrive test jigs!

      Laser cutting is so much faster than 3D printing!

      Encoder holders.

      Encoder holders.

      Motor holders.

      Pew pew.

      Gluing.

      3D printing took forever..

    • Maker Faire and Alpha Shipping Update

      Oskar Weigl05/28/2017 at 23:09 3 comments

      Maker Faire

      Last week I was at the 2017 Bay Area Maker Faire. It was really fantastic to meet other people who are into building cool stuff. Thank you for all the praise, suggestions, interesting discussions and ideas!

      Also, Juha Kuusama, the man behind the Liteplacer, flew over from Finland to hang out, and to help man the booth. Thank you!

      Below are some pictures of the booth we managed to put together with a very last minute effort. Huge thanks to my girlfriend for all the help!

      ODrive booth, shared with an unrelated exhibitor.

      Left to Right: Hardware showcase (see next picture), newsletter signup laptop, handcrusher5000 (seriously, several people didn't take the hint from the acrylic shields).

      Hardware showcase, top to bottom: Motors and encoder, with prices from Hobbyking/aliexpress (many people were very impressed with the kW/$), old versions of ODrive, and finally the last of the ODrive alpha stock for sale. I marked up the price from the nominal price of $120 because they were selling too fast, and I still sold out on Sunday morning ;D

      Handcrusher5000 in action. You can see the ODrive to the right of the laptop dancing to the accelerations.

      Handcrusher5000.

      Brakeresistor heatsinking on extrusion. It was cool to feel the heat gradient along the extrusion ;D.

      Alpha Shipping

      The first batch of Alpha boards were shipped out on Tuesday. Here are some pictures.

      Boards in boxes.

      Accessory bags.

      Some standoffs.

      29/30 boxes ready to go. The last one I filled after I realised it was missing, after I took the picture.

      30/30 boxes ready to go!

      EU orders

      The shipment of 21 ODrives going to Sweden to be resent from there, due to the exquisite dance of following VAT regulations, has been stuck in customs for a week. I supplied them with the additional information they needed on Friday (two days ago), so hopefully it will be released ASAP. I will keep you posted on any updates.

      Kits

      The order of 40 motors from Hobbyking is still on backorder, with no estimate when they will have additional stock. All they tell me is that "we usually get new stock every 30 days".

      In any case, knowing that shipments from China likely has problems, I made a backup order of 40 similar motors from Aliexpress. They also took forever to get here, but they actually came in the end. Specifically, they are the EMP C4250 - 500kv. The motor has very similar dimensions, it is a slightly faster motor (slightly higher kv), and it seems to have a bit more cogging torque.

      Finally, motors!

      EMP C4250 - 500kv.

      EMP C4250 - 500kv with the included accessories.

    • LitePlacer - First Tests and Build

      Oskar Weigl05/09/2017 at 06:45 3 comments

      The first test of the LitePlacer retrofitted with ODrive motors was a success!

      Running at 40% speed limit and 25% current limit, reaching a top speed of 1.75 m/s. The motor that is currently on the LitePlacer was picked for a system running on 24V, but this test was run on 12V, hence the low speed limit. I have ordered a 24V power supply, so hopefully we can see it go twice as fast soon!


      It should be noted that it is possible to pick a motor with twice the kv rating to run on a 12V system, and it would perform respectably.


      LitePlacer build

      The LitePlacer comes in a kit, which took about 2 days to build. Below follows the build in pictures.

      Here is an empty table; this is where we start. It is where the LitePlacer will be bolted. I chose to get a sturdy table but it still wobbles with the very high accelerations.

      A box full of goodies!

      Here is everything in the kit, splayed out on the floor, and somewhat organised by type of part. If you are building the kit, I would recommend also sorting the bolts by size, which I did later on.

      The build instructions are very well done, with everything detailed in bite sized build steps. A significant time of the build is spent collecting the components for each step. So if you have an assistant, have them help you collect parts for the build steps. Above is our assembly line at one point.

      Here is the z-axis (with the lead screw and rails), rotation axis, and the pick mechanism.

      Here is the x-axis finished.

      Retrofitting the y-transmission with a Turnigy Aerodrive SK3 - 5065-275kv. Calculations show that it is vastly overpowered for this application. Just the way a demo should be.

      Mechanical parts semi-finished.

      Tasty kilowatts, aluminium and steel.

    • ODrive v3.2 Have Arrived!

      Oskar Weigl05/04/2017 at 19:25 0 comments

      ODrive v3.2

      I just received a huge box from the factory today, full of ODrives (mango for scale).

      ODrive v3.2 looking good!

      Now I will be testing to make sure the design works as expected. Once that is done, we are looking good for shipping ahead of schedule!

      At the time of writing there are still 10 ODrive v3.2 left in the batch. Get one here.

      Kits

      A huge pile of encdoers have arrived.

      Also the first batch of motors for testing have arrived.

      Turnigy Aerodrive SK3 4250-410kv looking good!

      For the kits we are still waiting on the large order of motors from hobbyking, and the jigs have yet to be 3D printed. The 3D printing should be okay for making the expected delivery date, but the motor order may cause delays. I will make sure to keep you up to date with how that goes.

      Cheers!

    • ODrive Community and New Website

      Oskar Weigl04/28/2017 at 22:04 0 comments

      I'm very excited to announce that the ODrive community forums are up and running. This is the place for all kinds of discussions, comments, ideas, feature requests and queries. It also serves as the main place to get help with your ODrive; where I, and others who will be gaining experience with the board, can all help you and each other. We'd also love to hear about your project: what you wish to do when kilowatts and micrometers meet in an affordable package.

      The ODrive website has moved to https://odriverobotics.com. It has also been updated and now has some basic content on it. Progressively more information and resources will be added, and soon enough it will become a fully featured place to find information about ODrive.

    • ODrive and LitePlacer at Maker Faire

      Oskar Weigl04/25/2017 at 19:58 7 comments

      For a long time now, the main ODrive demo has been the pen plotter from more than a year ago:

      This is about to change! Through a close collaboration with Juha Kuusama, the guy behind LitePlacer, I am excited to announce that there is a demo ODrive/LitePlacer demo brewing. This consists of a LitePlacer retrofitted with the vastly overpowered SK3-5065; able to put out 300N of force on the belts, and hence a theoretical acceleration of the head at 50g. This virtually unlimited power capability should be a good platform to test the actual performance of the full setup, with the ability to emulate the power capabilities of other motors by simply applying software limits.

      So if you are in the area, or maybe even if you are not, please do come see the demo at the Bay Area Maker Faire on Sat/Sun the 20th/21st of May.

    • Alpha Preorders Finished

      Oskar Weigl04/19/2017 at 21:48 0 comments

      The preorder period of ODrive v3.2 and the corresponding getting started kits has now concluded. To those who joined the project, thank you for your support, and welcome to the alpha stage team! The batch of v3.2's have now gone to manufacture and we are slightly ahead of schedule for shipping things out by the 15th of May.

      I anticipate that there are some people who will want to join mid-way through the alpha stage, so I made sure to order some extra stock. At the time of writing there are 8 kits left and 17 ODrives. They will continue to be available on the ODrive Shop page until stock runs out.

      Again thank you for your support!

    View all 22 project logs

    Enjoy this project?

    Share

    Discussions

    Jan Mrázek wrote 06/29/2017 at 16:24 point

    Very nice project! I am excited to buy at least one unit, when they come out!

    I have two questions:
    - I am not able to view Altium sources, so I cannot find out the physical dimensions of the board. What are they?

    - What is the encoder you are using in the following photo? ? Where can I buy them?


      Are you sure? yes | no

    Timothy Girard wrote 06/25/2017 at 03:38 point

    I saw you at the Maker fair and was so blown away. Then, I couldn't find your information and ended up searching the maker site. Anyways, So glad your idea is taking off. I need the V4 3 axis version you mentioned below for a high performance router table. Any Idea on when you might dive into that? Frankly, I will make do with something simple until your ready. The cost difference / Performance is off the charts compared to anything out there. It was really cool watching the pick and place demo at the fair and my son saying "hey, those look like my quad motors"...

      Are you sure? yes | no

    fabien.bruning wrote 05/30/2017 at 08:51 point

    Super cool project, do you have any estimate on when new boards can be ordered?

    Thanks!

      Are you sure? yes | no

    Guilhem Saurel wrote 05/23/2017 at 08:54 point

    Hi !

    I've ordered a v3.2 from my research lab in EU, and for some paperwork, my staff would need an invoice… It is possible ? If not, at least the VAT ref from Sweden, or a postal address in US would be nice :)

    Thanks !

      Are you sure? yes | no

    Oskar Weigl wrote 05/26/2017 at 05:22 point

    Hi Guilhem, please email info@odriverobotics.com.

    Cheers!

      Are you sure? yes | no

    eduardo calegari wrote 05/07/2017 at 19:30 point

    Some software suggestions compatible with the odriver

      Are you sure? yes | no

    O4karitO wrote 05/05/2017 at 00:35 point

    hi there. I've been monitoring this project for quite a while, amazing job. Are you planning to make a 1 or 3 motor version? For use in 3axis applications.
    Thx

      Are you sure? yes | no

    Oskar Weigl wrote 05/05/2017 at 00:35 point

    Thanks!

    Yes it is planned that ODrive v4 will be 3-axis.

      Are you sure? yes | no

    O4karitO wrote 05/05/2017 at 00:37 point

    wow, that was fast!
    Any eta on that? I mean very roughly, like end of 2017, mid 2018, etc.

      Are you sure? yes | no

    Oskar Weigl wrote 05/05/2017 at 02:18 point

    @O4karitO I expect end of 2017.

      Are you sure? yes | no

    [deleted]

    [this comment has been deleted]

    Oskar Weigl wrote 05/04/2017 at 17:58 point

    You can sign up to the forum with existing Google, Facebook or Github logins. You can also just make a new user on the forum with any new username using just any email of your choice for verification.

      Are you sure? yes | no

    Johannes wrote 04/27/2017 at 08:59 point

    I like the lightplacer a lot...Hope this will work out soon! I'd like to come to MakerFair in SanMateo, but the flight is too long just to see this in action. Please keep us posted and upload a video. This looks similar to our NanoPlace machine, which runs on direct drive linear BLDCs with optical feedback encoder. 

    Do you use a optical, linear encoder, too? If not, try it! it is definitely worth the effort. Precision rises a lot compared to just using the rotary encoder. Or, even better, use a camera atteched to the tool as a motion feedback sensor! I saw the ADNS 3080 chip has great performance and is quite affordable. It is an optical mouse flowcam with up to 6400fps at 6bit grey sclace depth and 30x30 pixels. Something i want to give a try.

    Which sequencer/automation software/realtime interface do you want to use for you projects? 

    I saw the SmothStepper ESS with Xilinx Spartan FPGA supports driving BLDCs with feedback sensors and step/dir interface at max 4 Mhz for up to 6 axis using a Ethernet based real time interface along with the Mach4 automation software. Maybe this is an option for our projects. I am not sure about Mach4 abilities to drive robots though, maybe there is a better solution? I am new to this...the Software I use at work is much too expensive for hobby projects. 

      Are you sure? yes | no

    Oskar Weigl wrote 05/04/2017 at 18:01 point

    Yes I'm also excited for the LitePlacer demo! Working on making it a reality as we speak!

    Currently there is no linear encoders. I think it could be a great upgrade for good precision even without extremely stiff mechanics.

      Are you sure? yes | no

    Johannes wrote 04/26/2017 at 12:16 point

    Nice, thx for clearing things up. Waiting keen for the the board to arrive. So I will now order 21pcs Sony VTC4 cells (best economical/quality/longlife cell for the purpose) and a 240W powersupply that can be tuned to 25.2 V or 3.6V per cell (7cells in series/3parallel with oz890 smartBMS as balancer/ I2C-bus-monitor w/o FETs) to run two SK3-6364 motors

      Are you sure? yes | no

    Johannes wrote 04/23/2017 at 13:34 point

    shipping date is Mai 15 if i rember right.

    I dont get why there is a 12V input? Makes no sense to me. I want to use a 24V 10A powersupply from ebay, about $20 and no noisy fan sounds good to me, now that i payed over $100 for the V3.2 board. Using a PC powersupply is much too complicated and expensive for my purposes. 

    Please throw out that 12V input and replace it by a simple 24V input, thanks!!

    http://www.ebay.com/itm/DC-24V-10A-240W-Converter-Adapter-Power-Supply-for-LED-Light-CCTV-AC110V-220V-/291899181907?hash=item43f68c0b53:g:CnkAAOSwpLNX9DiH

      Are you sure? yes | no

    Oskar Weigl wrote 04/23/2017 at 19:37 point

    Yes, expected shipping date is the 15th of May.

    I assume you are looking at the architecture diagram. That shows just one way to wire it up, where there is a battery on the DC bus, and an arbitrary voltage power supply (8 to 22V) on the AUX port.

    The currently supported way to hook it up is to plug in a power supply (like your 24V supply) directly on the DC bus, and a brake resistor on the AUX port.

    Cheers

      Are you sure? yes | no

    Toon wrote 04/18/2017 at 07:24 point

    Is the v3.2 send to production?
    Starting to build my own controller, to learn more about it and understand the difficulties of controlling BLDC's.
    Using a teensy, 8,5 bit magnetic encoder, and a 3phase bridge.
    I'm currently implemented sinusoidal commutated control. No current feedback yet.
    Can you recommend some good articles, studies, you use during development of the firmware?
    How do you deal with cogging? The motor likes drop into a certain position. I have a turingy aerodrive 3542 800?

     

      Are you sure? yes | no

    Oskar Weigl wrote 04/19/2017 at 06:33 point

    Hey, yeah the v3.2 was just sent to production today, but I ordered some extra so there is still some up for grabs.

    Cool! Best of luck. Here are some resources in the order of most basic to most in depth:

    http://scolton.blogspot.co.uk/2009/11/everything-you-ever-wanted-to-know.html

    http://www.drivetechinc.com/articles/IM97PM_Rev1forPDF.pdf

    https://github.com/muffinator/fall-2011/raw/master/URGE/JamesMevey2009.pdf

    The simple solution to the cogging is to just use encoder feedback to force the motor with high gain to the location you need, and just reject the cogging through the feedback. Otherwise I think it could be characterised, like so: http://hackaday.com/2016/02/23/anti-cogging-algorithm-brings-out-the-best-in-your-hobby-brushless-motors/

    but I haven't looked into that myself yet.

      Are you sure? yes | no

    Toon wrote 04/19/2017 at 08:52 point

    I already ordered a V3.2 board :-).
    The JamesMevey2009.pdf is going to be an interesting read.
    Thanks for the resources.
    I think I have to re-evaluate my code to compensate for the cogging. I created a methode that scales the gain in order to move the motor in position without pushing to much current through the motor. I'll make it a bit more aggressive and add some current sensing feedback. I scared that I might burn out my motor.

      Are you sure? yes | no

    Oskar Weigl wrote 04/19/2017 at 21:10 point

    @Toon Cool, welcome to the alpha team!

    Okay, best of luck!

    FYI, cogging torque compensation is a planned feature for ODrive, though not the highest priority yet: https://github.com/madcowswe/ODriveFirmware/projects/1#card-2046258

      Are you sure? yes | no

    Christopher McCloskey wrote 04/14/2017 at 19:10 point

    What is the maximum encoder count/RPM that can be handled by the 2 axis system?

      Are you sure? yes | no

    Oskar Weigl wrote 04/14/2017 at 19:13 point

    Max encoder count is 2 billion, maximum encoder rate is around 10MHz, max rpm depends on the number of pole pairs of the motor. For a 7 pole pair motor, its around 18k rpm. 

      Are you sure? yes | no

    eduardo calegari wrote 04/12/2017 at 02:26 point

    Does your code identify the position of the motor rotor through the back emf and save this information through the encoder?
    In which part of the code does this happen?
    Is it automatic or does it have to be calibrated?
    Which cnc software do you use?

    Sorry so many questions, friend, it's the will to learn.
    Hehe

      Are you sure? yes | no

    Oskar Weigl wrote 04/12/2017 at 02:32 point

    The encoder is calibrated against the rotor by driving a very strong current, and telling the user they may put no load on the motor. Then the rotor magnets will align to the magnetic field, and that is how you find where the rotor is in the first place. After that you just track the encoder.

    I currently don't use any CNC software, but I will start trying some soon.

      Are you sure? yes | no

    eduardo calegari wrote 04/11/2017 at 10:31 point

    Congratulations on your cnc, the best project I've ever seen,

    My names is eduardo calegari, I live in Brazil,
    I've always been fond of cnc bldc its hardware and pid positioning codes,
    If you could give me information on books and studies on pid and position codes bldc stm32f.
       I will be very grateful if you guide me in this learning because I am a little lay on this subject.

      Are you sure? yes | no

    Oskar Weigl wrote 04/11/2017 at 17:03 point

    Thank you!

    Sure, I would recommend reading something like this: http://manuals.chudov.com/Servo-Tuning/PID-without-a-PhD.pdf

      Are you sure? yes | no

    Christopher McCloskey wrote 04/04/2017 at 19:39 point

    Is the motion still precise/smooth at low/slow rpm? I am guessing commutation is done by back EMF, but I was under the impression that for precision at low speeds hall effect sensor commutation is generally necessary. Have you found a way around this? 

      Are you sure? yes | no

    Oskar Weigl wrote 04/11/2017 at 04:46 point

    Yes the motion is precise and smooth at low speed. The commutation is done by encoder feedback, so even more precise than hall effect sensors.

    Cheers!

      Are you sure? yes | no

    Christopher McCloskey wrote 04/11/2017 at 13:45 point

    Wow, that's amazing. The only other encoder commutation system I've seen  costs $40 per cable, not including the actual encoders or drivers. Is there currently a feature to output one pulse per encoder revolution on one of the I/O? Equivalent to spindle indexing, which would allow tapping/threading operations with CNC via Mach3 or LInuxcnc. 

      Are you sure? yes | no

    Oskar Weigl wrote 04/11/2017 at 17:00 point

    @Christopher McCloskey
    It should be straightforward to set up one of the GPIO pins to send a pulse every revolution.

      Are you sure? yes | no

    Alexander Osika wrote 03/21/2017 at 09:08 point

    Hi Oskar! Really cool project; cheap brushless motors with position control will be great for robotics :) I was wondering however if you have considered going in the direction of having a motor controller with integrated encoder, mounted at the motor itself, and connected on a bus? As reference I have been looking at the T-STorM32 project (http://www.olliw.eu/storm32bgc-wiki/What_is_T-STorM32_about?) and the commercial motors from SimplexMotion.
    Greetings from Chalmers Robotics!

      Are you sure? yes | no

    Oskar Weigl wrote 04/11/2017 at 04:45 point

    Hey! Thanks!

    Yes I have thought about making an all-in-one package with motor/controller/encoder. The main limitation is cost. I will take it up seriously once the baseline controller is out and stable.

    Cheers!

      Are you sure? yes | no

    EngineerAllen wrote 03/12/2017 at 10:30 point

    looks complicated!

    how many hours did it take? 1000?

      Are you sure? yes | no

    davedarko wrote 03/12/2017 at 13:48 point

    It's over 9000!!

      Are you sure? yes | no

    EngineerAllen wrote 03/12/2017 at 15:36 point

    not you again

      Are you sure? yes | no

    Oskar Weigl wrote 03/12/2017 at 19:31 point

    Yeah I's say around 1000 is about right. I haven't counted, but I know I've played 1000 hours of Dota 2, and I've worked on this project about the same ammount ^^

      Are you sure? yes | no

    EngineerAllen wrote 03/12/2017 at 20:24 point

    haha thats a good balance =D

      Are you sure? yes | no

    Oskar Weigl wrote 03/12/2017 at 20:25 point

      Are you sure? yes | no

    Alain de Lamirande wrote 01/09/2017 at 14:51 point

    Guten Tag Oskar ! Wie gehst ? Mein Name ist Alain. Ich bin von Kanada. Ich interessiere mich wirklich für Ihr Projekt. 

    Do you have some boards, ready made to sell that I could test ? I know that this is open source, but I need a quick solution to test before I can make my own !

    Danke für alles !



      Are you sure? yes | no

    Oskar Weigl wrote 03/07/2017 at 17:20 point

    Sure, just sign up for a board here: http://goo.gl/forms/Y9aHMVqWyjW9WjHG2

      Are you sure? yes | no

    Toon wrote 11/25/2016 at 13:04 point

    I just saw this : https://www.kickstarter.com/projects/919717340/the-user-friendly-servomotor-you-always-hoped-exis/comments
    also on hackaday.iohttps://hackaday.io/project/6912-the-user-friendly-servomotor-you-hoped-existed
    Price is a bit to much at $169 + shipping and I don't think they will reach the $75K goal.
    I think ODrive can be cheaper with the same performance. 
    Also they use a 14bit magnetic rotary position sensor from Austria Microsystems claiming accuracy of +/- 0.2°. I know we had a conversation before about this but I still think it could be a nice option compared to the "600P/R Incremental Rotary Encoders" which is bulkier and a bit more expensive.

    Looking forward for news on the new test-PCB's. 

      Are you sure? yes | no

    Oskar Weigl wrote 11/26/2016 at 10:12 point

    Thanks for sharing!

    It looks like it is stepper motor based. In fact, it looks very similar to a Mechaduino, but with a web interfaced strapped on.

    When it comes to performance, it depends on what you mean. But for sure in terms of power output, ODrive will be much higher.

    Yeah I think the magnetic encoders are a good idea to support, and I intend to support it on ODrive v4.

    I have some progress to share, I will do a writeup to share hopefully this weekend.

    Cheers!

      Are you sure? yes | no

    Toon wrote 11/26/2016 at 17:08 point

    The HDrive is a brushless direct drive based on a two phase hybrid stepper motor. They show a little movie where they spin it to 10.000 RPM. Impossible with a conventional stepper motor. Will be something between a BLDC and a stepper.

    Mechaduino uses stepper motors. 

    I like the idea of an webInterface and having a udp socket as an interface. 

      Are you sure? yes | no

    Maciej wrote 10/30/2016 at 19:08 point

    Is it usable now? I'm thinking about testing it in big 3D printer, just want to know if step/dir input works? Than maybe I'll be able to help you guys developing it further ;)

      Are you sure? yes | no

    Oskar Weigl wrote 10/31/2016 at 10:38 point

    Hey, sounds cool! Unfortunately the project is quite delayed, but it will get back on track in the next week, which is exciting!

    If you want to be informed when you can buy a board at alpha testing stage, which is what it sounds like to me, please sign up here: http://goo.gl/forms/Y9aHMVqWyjW9WjHG2

      Are you sure? yes | no

    volatile666 wrote 11/09/2016 at 17:54 point

    So, how's the status now? ;)

      Are you sure? yes | no

    Oskar Weigl wrote 11/10/2016 at 08:14 point

    @volatile666 Last weekend I ordered some test-PCBs (bed of nails). So stuff is moving along again. Once the test-routines all work, we can start manufacture.

      Are you sure? yes | no

    Similar Projects

    Does this project spark your interest?

    Become a member to follow this project and never miss any updates