Mesa 5i25/7i77 - First Steps
Results of dmesg output after running command:
[ 1295.627761] set command hm2_5i25.0.7i77.0.0.nvencmode0 [ 1295.627777] remote name = hm2_5i25.0.7i77.0.0 ParamAddr = 3a Value = 4 [ 1295.631014] setup start: data_reg readback = 0 [ 1295.631024] buff = ec000000 [ 1295.662093] buff = ec000000 [ 1295.662158] Parameter setting success
... and "show param", proving that it was indeed set to "4" and the other is still at the default "0":
5 u32 RO 0x00000004 hm2_5i25.0.7i77.0.0.nvencmode0 5 u32 RO 0x00000000 hm2_5i25.0.7i77.0.0.nvencmode1
*Note that I had to exit and restart the HAL session before the change showed up
Now the above didn't actually change the way it counts though. Here's the kicker.... it's a known bug. See thread: using a hand wheel encoder .
The solution given is to use a free high speed encoder.
I neglected to power cycle the board after reading this, thinking that I needn't bother. Turns out it must have been fixed in the firmware for my recent board. Disregard. Everything is working as it's supposed to and I'm quite pleased.
( the sserial remote firmware has not changed for a couple of years )
You always have to cycle power for the NV parameters to take effect
They are copied to the RAM parameters (the ones that are actually used) at power up
I seem to have a working "Hello World" system.
MPG encoder is now controlling the position of the servo, with the servo amp and 7i77 in between the two. I knew to expect trouble when first powering things up because I've been working with these servos with other software/hardware for a while now. So, not too surprisingly it wanted to oscillate itself off the bench. I had mounted it in a little frame/box and put it on a towel to dampen things a bit. This worked ok while I sorted out the initial worts.
I ended up reducing the proportional gain to 0.05 and turning down the gains and current limit on the servo amp. I'll have to do it all over again when it's in the system but for now I'm happy that it works. It follows the commanded position very accurately with no oscillation now. Although it's pretty weak due to low current output for testing. I can crank it up but the oscillations get out of control and there's no point in trying to tune it on the bench.
So I'm thinking my next steps will be as follows:
- Implement E-stop
- Connect drive fault signal and do something intelligent with it
- Connect/configure MPG axis selection and multiplier switches (plus the LED while I'm at it)
- Start looking into what's needed to get this recognized as an axis in LinuxCNC (I have one of these servos already mounted to a small rotary table. That's the easiest to physically work with)
Any suggestions on the best order, or if there are other things I should look at first, are sincerely appreciated.
Sparky961 wrote: Any suggestions on the best order, or if there are other things I should look at first, are sincerely appreciated.
It's probably time to think about a complete LinuxCNC config now. Use PNCConf to make a basic system, or copy/modify one of the sample Mesa configurations.
emcPT wrote: I only saw this post now.
I made a complete "first steps" here:
Great resource. Thanks for pointing it out.
Something I haven't seen yet is what you used for connectors on the outside of your cabinet. Or maybe you don't need them because this is all mechanically joined? I'd like to be able to disconnect the cabinet from the rest of the system to keep it more easily portable.
andypugh wrote: It's probably time to think about a complete LinuxCNC config now. Use PNCConf to make a basic system, or copy/modify one of the sample Mesa configurations.
Seems logical. It will give me something to do while I wait for some switches and stuff to come from China.
I think this thread has run its course, as I have certainly taken the first steps (and a few more) Mesa with the board. I'll post new topics in the appropriate sections as necessary. Thanks again for all your help.
Sparky961 wrote: Something I haven't seen yet is what you used for connectors on the outside of your cabinet. Or maybe you don't need them because this is all mechanically joined? I'd like to be able to disconnect the cabinet from the rest of the system to keep it more easily portable.
To many wires. All connected to the cabinet, but with a flexible tube between the cabinet and the operator panel.