OpenServoCAN (...for hobby standard size Servos) - Page 1
Forum section: electronics / general

author: TrickyNekro
author_rank: Frequent Contributor
timestamp: January 10, 2019, 07:31:02 pm
content: Hi there ladies and gents!I am well aware that the OpenServo is an old theme not a new one, but still it´s been a very long time since I wanted to make my approach on the matter.And that´s exactly the case! Along with some wonderful holiday time the past weeks with family and friends, I spent part of my nights developing this project.It is meant to replace the control board in standard size servos like the HS-311 (design of the board size was base actually on the HS-311) and turn theminto a engineer´s wet dream. Or at least come as close as I can :-) !With the current design the board offers:Can be operated from much wider voltage range. 5V (maybe lower) to 15V (and a maximum of 18V for the brave ones).It can survive being connected to a upto 30V power source although it will not operate.Theoretically it can provide 8A continuous and can limit the current / power with digital control. (there is a high side current monitor).Control over CAN-Bus through the dedicated port.Although not recommended as there are no protections in place, USART, time pulse control, analog signal, through the programming port.Supports the use of either potentiometer or quadrature encoder. Although it could be used, no problem, with continues rotation servos.Over the digital connection it can provide information about load %, location, speed, input voltage, current draw, board temperature, etc.And maybe more that will come in time and development.The whole thing is based on the PIC18F26K83. In fact it is made possible due to the PPS of the chip. Board real estate in servos is rather limited.The design is being done in EAGLE CAD ver. 7.1.0.I publish the whole thing under the Creative Commons Attribution Non Commercial Share-Alike ver. 4 International.I know some people don´t like the Non Commercial, as it not "free culture" and stuff, but I am no hippy and right now I am counting beans to make things happen.If there is a will, if you want to put it that way, I could, with the allowance of the master-senpai of course, set up an e-begging link to help further develop the project and fill my coffee pot.As of now I only have the electronics schematic and board design ready. I have NOT even tested the fitting inside of a HS-311 so take all the information here as is.Plus I get the "feeling" that some passive components can be better tuned. These are all based on values that have worked before but the specifics are different here,so you´ll need some salt, not just a grain.I think as it is, the hardware has some interesting features, like the soft-switch and reverse polarity protection so I will on the long run be making youtube videos explaining them.Anyhow the aim of this project is to help people learn about more advanced things in electronics and those who play around with robotics and hobbyists.I welcome all your comments and opinions about the design!With Best Regards,Lefteris, Greece

author: TrickyNekro
author_rank: Frequent Contributor
timestamp: January 11, 2019, 03:23:36 pm
content: Minor Update:- Changed some values of resistors to have fewer different components on the board.- Added Resistors between the microcontroller and the MOSFET drivers, so that the microcontroller can NOT anymorepower the H-bridge by mistake through the protection diodes of the driver.- I am trying to panelize the boards to have them produced by JLCPCB, more updates on that later on.

author: mvs
author_rank: Frequent Contributor
timestamp: January 11, 2019, 06:19:14 pm
content: Backwards parallel connected LEDs usually do not need extra reverse voltage protection, since forward voltage is typicaly lower then max allowed blocking/reverse voltage and they can protect each other. So you can remove D6 and D7 diodes.

author: TrickyNekro
author_rank: Frequent Contributor
timestamp: January 11, 2019, 06:25:49 pm
content: Quote from: mvs on January 11, 2019, 06:19:14 pmI know but aren´t "ultra bright" LED (the common colored white LEDs) really bad handling reverse voltages? Cause it makes sense to have them as efficient as you could,they are only there for debugging and of course for that reason you do not need them bright. Imagine that operational range is from 5V to 15V. 15V Reverse hmmm, If I remember rightmost can´t handle more than 6V reverse.Thanks for the input,Cheers!

author: mvs
author_rank: Frequent Contributor
timestamp: January 11, 2019, 07:34:31 pm
content: In backwards parallel connection one LED will limit reverse voltage applied to another led to its forward voltage and vice versa. For blue and white LEDs it will be around 3.0-3.2V at nominal current, well below typicaly allowed 5V maximum.I have made a simulation in LTspice for better understanding. Blue line is output voltage of V1 (+/- 15V), green line is resulting voltage across LEDs (+/- 3.085V).

author: TrickyNekro
author_rank: Frequent Contributor
timestamp: January 11, 2019, 09:35:06 pm
content: Quote from: mvs on January 11, 2019, 07:34:31 pmHey, thanks for the effort but really my brain had some f@rting problems, it needed some extra time to open itself to the world again.Of course, of course, you are absolutely right.But, I will ridiculously double down a little bit and say that actually they can protect against open faults, or wrong placement faults.And there is always the option to just short them out.So I will leave them in place for the moment and note in the schematic that they can be either placed or shorted. Gives you more options.Never the less, thank you for your contribution mate!Cheers!

author: Poe
author_rank: Frequent Contributor
timestamp: January 17, 2019, 03:35:39 pm
content: PWR_EN appears to control T3. Dis/Connecting PWR_V+ to V+.D5 appears to limit T3's Vgs.When PWR_EN is high, T5 is off, T3 and T4 are on.When PWR_EN goes low, T5 turns on just long enough to short C1, then stays off. Once C1 discharges T3 and T4 are off.PWR_VIN is still supplied to PWR_V+ through T4's body diode.Is this correct?What is the purpose of T6?

author: TrickyNekro
author_rank: Frequent Contributor
timestamp: January 18, 2019, 12:45:29 pm
content: Quote from: Poe on January 17, 2019, 03:35:39 pmThe whole T5, T6 and T7 along with R12, R13 and R14 circuit is a sightly modified version of the twin-NPN totem pole circuit with the inclusion of R13 both for soft-start and current limiting for the D5.T5 acts always, when it´s in its ON state, as a voltage follower. When T7 is enabled by the microcontroller it pulls the base of T5 low so it deactivates it and pulls the "load" low through T6.T6 is there to "isolate" (not galvanically by any means) the output from the base drive of the T5. Because in this circuit R13 is present, it might have been possible to omit T6, but I kept it there for reasonsof convention. T6 can also be any kind of diode, but I have found that generally using the same kind of BJT works better and easier (as you don´t have to calculate capacitances to limit shoot-through).The same circuit you can use also with Darlington transistors, or a "reverse" circuit you could also use with PNP transistors.It´s really often that you use said circuit as a MOSFET driver, did it myself many times in fact. Of course not with R13 in place.It is always inverting and its high-z state is always high. You can limit the output voltage of a normal totem pole circuit with just a Zener from the base of the high side NPN to ground.I have attached a picture of the normal version of the circuit below for comparison. Resistor values are not painted or measured to spec.

author: TrickyNekro
author_rank: Frequent Contributor
timestamp: January 30, 2019, 06:44:32 pm
content: I set up everything so far in GitHub :https://github.com/TrickyNekro/OpenServoCANfor anyone interested.I am also thinking of starting a gofundme campaign for buying the first materials that I need.Already for 10 boards it will cost me around 135€ with some extra parts and without some others, probably will have to go out fishing in Microchip Direct.But If I ever wanted to produce this thing, it would most probably cost less than 20€ per piece to the end buyer, so that´s something!

author: TrickyNekro
author_rank: Frequent Contributor
timestamp: April 01, 2019, 10:35:38 pm
content: I know it´s been a time since last update but I have been busy, work and all...But guess what work does? It gives you money for your crazy projects!Well I have this plus another two boards assembled, so that I can begin testing soon.Unfortunately it will be now weekend priority project so until I get a very long leave, it will be some time until I make serious progressBut project will be completed never the less, just in a longer time. Meanwhile I´m also ordering servos from ebay for testing.If anyone has some broken servos (good motor and gears - burnt PCB) please PM me. It could really help if you wish to send them my way instead of the trash bin!

author: TrickyNekro
author_rank: Frequent Contributor
timestamp: November 02, 2020, 08:41:28 pm
content: Hi!I want to update the people with some information after all this time.Unfortunately, last two years I did not have time to follow through with the project. For that reason, I want to thank everybodythat contributed in the campaign and would like to promise that I will continue developing it.I also ended the fundraising campaign, it does not really matter now to tell you the truth. I can support the project on my own.As I was developing the code for the project I found its short comings as a design a made V.2 of the boards as you can see below!The boards are already ordered, github will soon be updated and parts also ordered!Please give me your suggestions! I will continue to do as best as I can!Best Regards,Lefteris

author: TrickyNekro
author_rank: Frequent Contributor
timestamp: January 04, 2021, 01:49:00 pm
content: Version 2 of hardware is now up on Github!https://github.com/TrickyNekro/OpenServoCANPCBs are already here, first batch from OSHPark. Materials are bought or sampled and on the way. And will slowly return to writing code, at least for the microcontroller board.The modularity of the system in this design makes it really nice and easy to be able to develop each part individually.I´ll be here for any questions, cheers!Best Regards,Lefteris