stmbl servo drive setup with smart serial.

More
11 Jul 2019 20:00 #139123 by skunkworks

Please Log in or Create an account to join the conversation.

More
05 Aug 2019 18:35 #141435 by skunkworks
another update

Please Log in or Create an account to join the conversation.

More
31 Oct 2019 12:14 #149280 by Henk
HI
I would like to tinker with the STMBL setup a bit before deciding on getting some boards made.

For a start, i would like to flash the STMBL firmware to two development boards (like these www.robotics.org.za/6970622937432?search=stm32) and establish the connection to a Mesa Sserial port. Is that even possible?

Henk

Please Log in or Create an account to join the conversation.

More
31 Oct 2019 12:47 #149282 by skunkworks
I am no expert but this link is where the Deb's hang out

gitter.im/rene-dev/stmbl#utm_source=noti...unread-notifications

Please Log in or Create an account to join the conversation.

More
27 Jan 2020 02:10 #155870 by skunkworks
More stmbl action

Please Log in or Create an account to join the conversation.

More
07 Feb 2024 10:41 #292724 by freemoore
Hi.

(Hope it's OK to post this here rather than a new thread, please move if needed)

I'm wrestling with STMBL connections to linuxcnc again, and having a little more success. I'm trying to figure out the STMBL config - the file stored in flash memory and accessed/configured via Servoterm.

I've seen the lcnc config example andypugh has posted a couple of times, I'm using the bare-bones lcnc config from rene-dev supplied as an example (the same one, I think) and am stepping through building a stmbl config by adding one component at a time and seeing what happens.

I gather that spi, yourself, andypugh, obviously rene-dev and maybe cakeslob have stmbl drives and have managed to get them working with lcnc. What I can't find is any guide to the STMBL HAL components or how to string them together - there are a couple of examples on the gitter channel but rarely explained or commented.

My test rig is Linuxcnc 2.9.2 -> Mesa 7i94 -> STMBL -> old Fanuc Model 20F (A06B-0352-B731 - 23Nm, 20A, ~150V, 2000rpm) with quadrature encoder, as well as C1/C2/C4/C8 commutation output (unused atm).

I'd be grateful if anyone could post their config files and delighted if anyone can shed some light on the workings.

Please Log in or Create an account to join the conversation.

More
07 Feb 2024 12:19 #292732 by andypugh
There is a Fanuc A06B config in the STMBL source on Github:
github.com/rene-dev/stmbl/tree/master/conf
Now, that doesn't appear to be using smartserial, but it might be as simple as adding "link sserial" to the config.
See this search for examples configs using sserial: github.com/search?q=repo%3Arene-dev%2Fst...nk+sserial&type=code

Please Log in or Create an account to join the conversation.

More
07 Feb 2024 13:11 #292737 by freemoore
Thanks Andy,
I have been searching the config examples to try to make sense of their hal system, but it's very stab-in-the-dark. I'm hoping for a look at a config which specifically is known to work with linuxcnc.

Right now I have a minimal config, which shows up the stmbl's hal pins in lcnc halshow, releases the dc brake on pressing Enable/F2 in Axis, and will respond to an Axis jog at least a little (by oscillating a little and then giving a saturation fault/amplifier fault in servoterm/lcnc respectively). So it feels like it's a matter of tuning, maybe.

So far if I add my measured/calculated motor parameters to my config, I get saturation faults or the servo makes noises like an old dialup modem. I'm proceeding by adding in hal lines one at a time (from the a06b config you linked and from others that seem like they might be relevant) and testing, but it's very slow going. E.g. if I add 'link enc_cmd', which is in many of the examples, it faults immediately...and really all I have to go on is that it's often linked...it's a bit of a cargo cult way of doing a config.

Would you be able to post your stmbl config?

Please Log in or Create an account to join the conversation.

More
07 Feb 2024 13:36 #292740 by andypugh
I suspect that the STMBL developers have _only_ used it with LinuxCNC. So all the configs are likely to work.

I am currently only using one STMBL, to control a harmonic drive. So very little of this will be relvant.


link pid
link pmsm
link enc_fb0
link misc
link sserial
link uvw_fb1
conf0.r = 3.5
conf0.l = 0.000120
conf0.j = 0.000200
conf0.polecount = 4
conf0.max_ac_cur = 30
conf0.mot_fb_res = 6000
conf0.mot_fb_offset = -0.38
conf0.mot_fb_rev = 1
fb_switch0.phase_cur = 2
linrev0.scale = 3.6
uvw0.p0 = 0.000000
uvw0.p1 = 3.000000
uvw0.p2 = 5.000000
uvw0.p3 = 4.000000
uvw0.p4 = 1.000000
uvw0.p5 = 2.000000
uvw0.p6 = 0.000000
uvw0.p7 = 0.000000
The following user(s) said Thank You: freemoore

Please Log in or Create an account to join the conversation.

More
07 Feb 2024 14:04 #292741 by freemoore
Right, that's good to see. I guess you have 2 types of feedback, and all entries containing uvw related to configuring the 2nd (3x hall sensors?) so not relevant for me.

The line: conf0.mot_fb_rev = 1 appears to mean 'reverse feedback direction' having just tried it out in my config, now removed.

In case this is useful to anyone else, here's my current config, which responds to lcnc jog keys but as mentioned, unless the jog speed is around 3mm/min it responds with a quickly increasing oscillation followed by a fault:

link pid
link pmsm
link enc_fb0
conf0.mot_fb_res = 8000
conf0.mot_fb_offset = 1.16
link sserial
conf0.polecount = 4
link misc
io0.out0 = fault0.mot_brake
rev0.in = sserial0.pos_cmd
sserial0.pos_fb = enc_fb0.pos
term0.wave5 = sserial0.pos_fb
term0.wave6 = sserial0.pos_cmd

The same config, with my current values for motor parameters included:
link pid
link pmsm
link enc_fb0
conf0.mot_fb_res = 8000
conf0.mot_fb_offset = 1.16
link sserial

conf0.r = 0.1
conf0.l = 1.082
conf0.j = 0.012319
conf0.max_ac_cur = 20
conf0.max_vel = 209.4395
conf0.max_acc = 10
conf0.max_force = 23
conf0.psi = 0.191666666

conf0.polecount = 4
link misc
io0.out0 = fault0.mot_brake
rev0.in = sserial0.pos_cmd
sserial0.pos_fb = enc_fb0.pos
term0.wave5 = sserial0.pos_fb
term0.wave6 = sserial0.pos_cmd

But, as mentioned, adding those in gets me the modem noises. Going to go through the parameter measurement/calculation process again and see if I get different numbers this time.

Please Log in or Create an account to join the conversation.

Time to create page: 0.075 seconds
Powered by Kunena Forum