Page 1 of 64 1234 11 51 ... LastLast
Results 1 to 12 of 764

Thread: How I fixed my Chinese TB6560 controller (updated)

  1. #1
    Registered
    Join Date
    Aug 2010
    Location
    USA
    Posts
    15
    Downloads
    0
    Uploads
    0

    Default How I fixed my Chinese TB6560 controller (updated)

    I purchased a 4-axis controller base on the Toshiba TB6560 Driver IC from a Hong Kong vendor thru e.b.a.y. Although the board could be made to function by setting all parameters to low / relaxed / lame, I decided to find out why the controller greatly underperformed as compared to what the TB6560 IC specification implied.

    Performance issues of MY board:
    - required maximum (slow) timing settings in EMC2 to work without missing steps
    - could be made to work at 12v but not 24v without missing steps
    - would work with drive current set to minimum (25%) otherwise motors would miss steps
    - at working controller settings, rapids weren't rapid...

    All of these factors suggested a noise problem in the circuit (faster timings = less noise margin, higher drive voltage = more switching noise, higher drive current = more switching noise, rapid rapids = more switching noise).

    Disclaimer: The information here pertains to MY TB6560 board which may not be the same as YOUR TB6560 board. Use the information here in at your own risk. I accept no responsibility as to the application of this information to YOUR board. However, the information is believed to be correct and does seem to have completely fixed MY board.

    A schematic did not ship with my board. Another e.b.a.y. customer had requested the schematic from the my vendor, but the vendor response was "we dont do that". So I developed my own schematic based on inspecting and measuring MY board. See attached.

    Seven issues were identified with the design on MY board:

    1) Driver IC CLOCK input improperly driven: The TB6560 uses the rising edge of the CLOCK input (not explicitly called out in IC spec except for “rising edge” symbol shown in one table). The slow turn off time of the opto-coupler combined with the passive pull-up resistor are insufficient and allow system noise to cause unstable driver circuit operation. ( I measured a rise time with and oscilliscope of app 50uSec on my board.) Solution: Actively drive the CLOCK input using added 74HC14 IC as buffer.

    2) Driver IC ENABLE input improperly driven: The opto-coupler for the ENABLE input is wired incorrectly having the npn emitter connected to supply. Although the circuit does function, the improper wiring of the npn will cause very low transistor gain opening the possibility of system noise corrupting the ENABLE signal. Solution: Rewire the npn of the opto-coupler with collector to supply and emitter to output.

    3) Drive Current Manipulated by CLOCK/STEP signal: It appears that an attempt was made to implement a feature where the driver would reduce current to the stepper motors when the motors were idle. This was accomplished by pulling the drive current set input low when the CLOCK signal was active high. And although the feature does work for drive current settings of 25% and 50%, the implementation has negative side effects that outweigh the feature usefulness:
    - the feature departs from the reference design of the TB6560 spec resulting in the spec no longer accurately describing operation
    - motors may be overdriven with higher than programmed drive current
    - artificially raises the lowest current motor that the controller board can safely drive
    Solution: Disconnect the non-spec circuit.

    4) Activity LED improper function: The activity LED circuit works properly when the STEP signal from the PC has high duty cycle (active low orientation). However, the TB6560 spec directly states that proper operation requires low CLOCK (e.g., STEP) signal duty cycle (or active high orientation). With active high orientation signal the activity LED remains lit even when the driver is not being ‘stepped’. Solution: None. Ignore the LEDs.

    5) Potential for Overheating of 12V Voltage Regulator: The cooling fan is fed directly from the 12V Vreg output adding significantly to the loading of the device. The 12V Vreg will shut down if it overheats protecting itself; such a shutdown would result in lost steps of an active motor. Solution: Power the cooling fan with an external supply or (with suitable step down circuit) from the stepper motor supply voltage directly. With the fan connected to the 12v Vreg the heatsink temperature was 155 F, disconnecting the fan and waiting 5 minutes, the 12V Vreg heatsink temp dropped to 125 F.

    6) System Not Optically Isolated: Despite having opto-couplers on all PC inputs and output, the controller does not properly implement optical isolation of the PC from the driver IC’s nor from the stepper motor power supply. This is due to sharing of ground among all circuits. Solution: None. However, do assure PC and stepper motor power supply externally share the same earth ground.

    7) Operating Voltage Mis-information: The board is marked for input voltage “12v to 36v” but the IC spec indicates maximum operating voltage of 34V. But even that is probably not a safe operating point due to potential stepper motor generated voltage spikes. The controller board output diodes will clamp large overvoltage spikes when the diode breakdown voltage is reached, but the breakdown voltage is likely above the maximum voltage the driver IC can sustain without damage. Solution: Recommend limiting input voltage to 30v or less to provide margin of safety for operation.

    Update: Immediately after posting the fixes, it occurred to me that it would be better to buffer the CLOCK/STEP signals with 1 74HC14 inverter instead of 2 :
    - allows the 'activity LEDs' to work (using 1 inverter and setting software to invert the clock)
    - allows 1 IC to 'fix' a 4 or 5 axis board instead of needing 2 IC's
    - simpler to wire
    See attachment slide10ver2.jpg for updated fix. I tested this morning and works fine.

    Similar Threads:
    Attached Thumbnails Attached Thumbnails -cntr_top-jpg   -cntr_bot-jpg   -bufbrdmntd-jpg   -slide09-jpg  

    -slide10ver2-jpg   -step_waveform-jpg  
    Attached Files Attached Files
    Last edited by lasik2025; 08-28-2010 at 12:42 PM. Reason: better (simpler, more complete) fix described


  2. #2
    Registered doorknob's Avatar
    Join Date
    Jan 2010
    Location
    USA
    Posts
    2130
    Downloads
    0
    Uploads
    0

    Default

    Bravo on making the effort to examine in detail how the driver board is actually wired, and what design decisions (and possible mistakes) were made by some anonymous board designer on the other side of the world.

    I'm considering getting a board that looks suspiciously like the one that is shown in your photos, and so I'll have to take a closer look at the TB6560 spec sheet and reference design and compare it with your reverse-engineered info. Thanks...



  3. #3
    Registered Drools's Avatar
    Join Date
    Feb 2009
    Location
    Canada
    Posts
    1283
    Downloads
    0
    Uploads
    0

    Default

    Very well thought out!
    I do not own one of the boards you mention but you have done everyone that owns one a great service.



  4. #4
    Registered
    Join Date
    Jul 2010
    Location
    spain
    Posts
    4
    Downloads
    0
    Uploads
    0

    Default

    great!. Many thanks for share. I have same issues on my 3 axis board, with 1 motor seems to work fine, but when try with 2 o 3 motors the steppers do not work fine (some step stalls on all motors). I replace some parts (tb6560, capacitors, added pullup without good results). I am going to try your fix .

    What do you think about the capacitor used for clock? I think that could be lower value for decrease the needled pulse time.

    (Sorry my Spanglish )



  5. #5
    Registered
    Join Date
    Aug 2010
    Location
    USA
    Posts
    15
    Downloads
    0
    Uploads
    0

    Default

    Quote Originally Posted by villamany View Post
    great!. Many thanks for share. I have same issues on my 3 axis board, with 1 motor seems to work fine, but when try with 2 o 3 motors the steppers do not work fine (some step stalls on all motors). I replace some parts (tb6560, capacitors, added pullup without good results). I am going to try your fix .

    What do you think about the capacitor used for clock? I think that could be lower value for decrease the needled pulse time.

    (Sorry my Spanglish )
    villamany,

    The capacitor on OSC does set the step pulse time as you indicate. I was not able to determine the value of that capicitor on MY board and I could not get my half-working oscilliscope to trigger properly so that I could measure the frequency on the OSC line. The silk screen on MY board says "102" which usually stands for "1000" and since the TB6560 IC spec says acceptable values are 100pF to 1000pF one would think the cap is 1000pF. But there are several parts on the board that whose values do not match the silk screen...
    With that said, I am unsure if changing the OSC cap will help or not. On MY board the rise time on the step/CLOCK was simply too long. I did try changing
    the step/CLOCK pull-up resistor from 4.7k to 1.0k which changed the rise time from 50uS to app. 20uS as measured on my o-scope; this change seemed to reduce the missed steps by only a small amount; only by adding the buffer with its very fast rise time was I able to eliminate missed steps (the 74HC14 biffer IC spec says rise time is less than 0.020uS or 1000 times faster than without the buffer, e.g. 20nS)

    At what voltage are you trying to run your controller ? Without the buffer, I could get 12v to work but never found any settings that allowed 24v to run properly.



  6. #6
    Registered
    Join Date
    Jul 2010
    Location
    spain
    Posts
    4
    Downloads
    0
    Uploads
    0

    Default

    at 13.8v i get some step stall, at 24v are very more step stall.

    The stall are increase with:
    - more steppers connected.
    - with more torque settings.
    - with more voltage.
    - with less time decay settings.
    - with low microstep settings.

    Seems to be also noise problems.

    What are the added resistors that i can see on "cntr_bot.jpg" picture?.

    I only need 4x10k resistors, 1x74hc14 ic and 1x decouplig capacitor for these mods is ok?.

    I has my controller working for about 5hours without problems on 12v regulator (very hot for my hand but not thermal shutdown ocurred).



  7. #7
    Registered
    Join Date
    Aug 2010
    Location
    USA
    Posts
    15
    Downloads
    0
    Uploads
    0

    Default A buffer board schematic for your consideration

    Quote Originally Posted by villamany View Post
    at 13.8v i get some step stall, at 24v are very more step stall.

    The stall are increase with:
    - more steppers connected.
    - with more torque settings.
    - with more voltage.
    - with less time decay settings.
    - with low microstep settings.

    Seems to be also noise problems.

    What are the added resistors that i can see on "cntr_bot.jpg" picture?.

    I only need 4x10k resistors, 1x74hc14 ic and 1x decouplig capacitor for these mods is ok?.

    I has my controller working for about 5hours without problems on 12v regulator (very hot for my hand but not thermal shutdown ocurred).
    villamany,

    The 4 leaded resistors that can be seen on "cnr_bot.jpg" were my attempt to fix the controller by changing the STEP/CLOCK pull-up from 4.7k to 1.0k. I did this by leaving the 4.7k in place and adding 1k resistors in parallel between the +5v supply and the Step signal ; the resulting effective pull-up was 4.7k || 1.0k = 0.8k. On my board, the chip resistors and capacitors are glued and soldered down making removal of those parts a little difficult and I did not want to risk damaging any printed circuit board traces by applying enough heat to cause the glue to release.

    For the mod's, you may want 6 resistors as you will not want to leave the unused 74HC14 inputs unconnected; you can tie them to ground or +5v or, as I would suggest, to pull-up resistors. That way if you come across another signal that needs buffering the you will have spare buffers in place.

    To hold my (ver 1) buffer board to the controller I used double sided foam tape (see "bufbrdmntd.jpg - buffer board mounted").

    I have attached a schematic for a ver 2 buffer board for your consideration.

    Attached Thumbnails Attached Thumbnails -cnc-controller-buffer-board-schematic-ver-2-a  


  8. #8
    Registered
    Join Date
    Jul 2010
    Location
    spain
    Posts
    4
    Downloads
    0
    Uploads
    0

    Default

    many thanks, finally i am going to use 3 buffers for the 3 step pins and the another 3 buffers for apply the same fix to dir pins (my controller only has 3 axis ) for prevent purposes.

    If i can measure the real osc capacitors value i let you know.



  9. #9
    Registered WoodSpinner's Avatar
    Join Date
    May 2010
    Location
    usa
    Posts
    313
    Downloads
    0
    Uploads
    0

    Default

    I was considering buying one of these boards, guess I wont bother.

    John



  10. #10
    Registered
    Join Date
    Sep 2010
    Location
    USA
    Posts
    6
    Downloads
    0
    Uploads
    0

    Default

    Hi folks,

    I'm very new to CNC and have a long way to go no doubt. I have also bought the TB6560 board and have not hooked it up yet and I'm glad I ran across your board fix post first before I do hook it up. I have a question. Should a breakout-board be used with this TB6560 board ? ? ?



  11. #11
    Registered
    Join Date
    Aug 2010
    Location
    USA
    Posts
    15
    Downloads
    0
    Uploads
    0

    Default

    Quote Originally Posted by brutusgraphics View Post
    Hi folks,

    I'm very new to CNC and have a long way to go no doubt. I have also bought the TB6560 board and have not hooked it up yet and I'm glad I ran across your board fix post first before I do hook it up. I have a question. Should a breakout-board be used with this TB6560 board ? ? ?
    brutusgraphics,

    MY TB6560 board, as shown in the previous pictures, includes the circuitry that a breakout-board would provide; so the answer is "no you dont need a [separate] breakout-board" if YOUR TB6560 board is the same as mine.

    However, there is one caveat. The optical isolation provided by MY TB6560 board was poorly implemented and does not provide all the protection a properly implemented breadout-board could. But as long as you plug in your PC to the same wall outlet (or the same power strip) as the powersupply for your CNC machine then you should be ok. Trying to use a separate breakout board with MY TB6560 would be extremely difficult.



  12. #12
    Registered
    Join Date
    Sep 2010
    Location
    us
    Posts
    13
    Downloads
    0
    Uploads
    0

    Default

    Hi lasik2025,

    I was busily reversing engineering a 3-axis controller when another user 'doorknob' pointed out your existence over on this forum page.

    Here's some more flaws for the list.

    - There is a FR301 diode in the motor voltage supply to each TB6560. When back EMF hits, that current can only dump into the 3300uF decoupling cap. The volts increase and folks on this forum start practicing their French. >> replace the 3 culprit diodes with fuses.

    - No back EMF diode on the coil of the relay >> add diode

    - Pins 25 of the TB6560 extends over the trace from pin 23 >> trim back

    - Heatsink not grounded. The resistance from heatsink to ground is small but non-zero. When failure occurs substrate currents will help the remaining TB6560s to join the party >> according to the datasheet isolate each device from the heatsink or simply ground the heatsink

    On the OSC pin issue, I observed a nice sawtooth waveform, ranging from 0.5V to 2.5V, with a frequency spread from 38kHz to just slightly over 40kHz.
    The max step rate for the TB6560 is 1/4 of this.

    Last edited by circuitz; 09-06-2010 at 01:22 AM.


Page 1 of 64 1234 11 51 ... LastLast

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  


About CNCzone.com

    We are the largest and most active discussion forum from DIY CNC Machines to the Cad/Cam software to run them. The site is 100% free to join and use, so join today!

Follow us on

Facebook Dribbble RSS Feed