Everything on chinese scale here
but 3 read per second TOOOOOOOOOSLOOOOOOOOOOW
http://www.shumatech.com/support/chinese_scales.htm
Everything on chinese scale here
but 3 read per second TOOOOOOOOOSLOOOOOOOOOOW
http://www.shumatech.com/support/chinese_scales.htm
You can switch them to 50 reports per second but it is heavy on the battery. Fifty is only a bit slow
The step interrupt works with two co-ordinates, I call them WWA "Where we are" and WTB "Want to be".
When the step interrupt fires I compare them. If they are within tolerance I move on a step in WTB and update WWA. If a scale overwrites WWA and puts it outside tolerance I don't update WTB, I stop where I am and do remedial steps until I have them back inside tolerance.
The big question is how low I can set the tolerance before it goes in to permanent remedial steps? That will tell me if I have a working system or not.
Your only using the 3 last bytes right? Do you have the zero line set up on the controller too, so that you can set home position? Or do you just upload the position of the scale into the controller and work from there?
Right now, I'm just thinking about checking the position when the scale sends out it's signal. Compare both signals, and see if it holds tol. The most anoying thing about these scales, is the 20480 bits/inch. This translates to just about 0.0012402 mm. Thats just about 806.33 per mm. I will also have to figure out a good way to handle backlash. Do you let the controller do the math? Like using some kind of algorithm to figure out what the position of the scale really is?
Thanks Rokag. I have been reading through that pake lots of times. For everyone else, there is also this page: http://www.yadro.de/digital-scale/working.html Lots of good information.
What i dream of it's a repositioning system .The step interrupt works with two co-ordinates, I call them WWA "Where we are" and WTB "Want to be".
When the step interrupt fires I compare them. If they are within tolerance I move on a step in WTB and update WWA. If a scale overwrites WWA and puts it outside tolerance I don't update WTB, I stop where I am and do remedial steps until I have them back inside tolerance.
The big question is how low I can set the tolerance before it goes in to permanent remedial steps? That will tell me if I have a working system or not.
I have a gecko with one rotary encoder on the motor and one scale.
the idea will be to have a rotary encoder working at the same rate or direct multiplier can be done easily with 30$ CUI AMT 102 with switchable resolution from 48 to 2048 ppr or 196 to 8192 count (after quad.).
the encoder signal goes on a black box the servo is driven by the rotary encoder but then 50 time per second i check the load position and add or substract one step so the black box will send to the gecko a pseudo encoder signal. I will love to try it with arduino but i have no much time.
by the way since you are electronician.
can i put 3 line behind the ua9639ac to get 1 for the dro one for the BOB and one for an Arduino ? this without destroying my encoder signal
Lucien
Robin,
I'm afraid I'm having a hard time understanding the purpose of this. What is it you're trying to achieve?
If you have a stepper system, and are not following properly, that means you HAVE over-driven it, and it *can't* keep up, as the motor is incapable of providing the necessary torque. So, what's the remedy? I've you're moving, and fall behind, your only option is to slow WAY down, if not stop entirely, to re-position. As soon as the step train is interrupted, the motor is likely to stall, as you cannot change the step rate instantaneously without the motor getting out of sync with the driver, which will cause a stall. In fact, it probably already has stalled long ago by the time you've even detected the following error.
If you're using this to attempt to correct backlash, well, backlash compensation is never 100%, no matter how you do it, as cutting forces can cause a very sudden shift in machine position, and once that's happened, the damage is done - you've got a divot in your part that no amount of compensation will avoid or remove. Compensation can change the nature of the damage done by backlash, but it cannot eliminate it, except in specific circumstances.
Regards,
Ray L.
The leading edge of the scale report triggers a monostable, the report clocks through my 24 bit shift register ending just before the monostable times out and fires the interrupt.
To reset the zero on the scale the axis has to be blocking it's zero position optic. I move to block the optic, step out slowly and the scale self zero's. I add a 24 bit correction to the scale report to match the scale to the work position.
806.33 counts per mm, dump the bottom two bits to lose the jitter giving 201.3/mm which is close to my 200/mm stepper resolution. The positioning works entirely in scale units.
Robin,
Yes, but in that case they're removing very minute errors, due to lead error in the screws, minute flexing in the machine itself, thermal expansion, etc. That's necessary to get down to the 0.0001" tolerance they can hold. They don't have to deal with backlash, as there isn't any. And, they're servo-driven, not stepper, so they can easily add or delete pulses on the fly, and the servo amp will ensure they are properly dealt with within the limits of the motors. Can't do that with steppers. So, it's a completely different situation from what's on the typical home-brew machine. I'm not saying you shouldn't do it, I'm just trying to understand exactly what problem you're trying to solve. I've seen a lot of things suggested on this thread, but some of them are simply not achievable by this method, so, hopefully, those are not the ones you're going after.
Regards,
Ray L.
That is quite smart! If you don't mind, I will try the same thing on my machine when I get this up and running. If I ever get around to it that is.
That is also a smart sollution. Should work much better then the way I was heading. But if I handle it as 200/mm, I will be 0.008mm away for each mm. Over 230mm, I will be 1.8mm off. That sounds bad. So for every 200 step, I will have to add 1 to the count. And for every 600, I will have to add another 1. The same way I was going to do it, but with less jitter. I will give it a try, but because I'm using it for pos. checking. I will still have a problem with backlash.
Is it possible to replace the timing mechanism on the scale's pcb? Is it a crystal oscilator with buffer caps? Or is the oscilator built in to some IC?
If you can replace the oscilator with something about 4x faster then you should be able to get reasonably accurate measurements.
It also depends on if the chip inside the caliper can take the increased clock. Most of these have external crystals. Thats at least what I have seen inside most of these.
Might be worth a try, but I guess you will get false readings because you switch frequency.
hey switch i am speaking hardware not softwareUnfortunately I know diddly about other systems. I find writing my own software makes me feel warm and secure. When things go wrong having the source code is a wonderful thing.
line of copper not line of instruction
this is a standard Differential Reveiver/Transmitter if you want to process a signal better to have it clean this is the easy way to do it
http://www.sfu.ca/~alan/gecko/g320_1.pdf