cancel
Showing results for 
Search instead for 
Did you mean: 

To Choice a kit for PMSM

oleg_sidorovich_1981
Associate II

Help me choose a evaluation kit for control PMSM (FOC) with encoder for learning. I need used Motor control Workbench with motor profiler with examples. I need to change code by CubeID and CubeMx and build graphs (STM32CubeMonitor).

I want to buy EVALKIT-ROBOT-1 but I do not undestend how i can connected to PC, because that board (STSPIN32F0A) have not USB port and have not embedded ST-Link.

Help me.

21 REPLIES 21
Cristiana SCARAMEL
ST Employee

The EVALKIT-ROBOT-1 has a dual row 10 pins header with 1.27mm pitch spacing for programming/debugging (J12).

You can use the ST-LINK/V3 that have this connector type.

chaaalyy
Senior II

Sorry that i have to say that, but this is definitely a "Buy something"-TRAP !!!

The STEVAL-ROBOT-1 indeed has the connector and also the cables are included with the STLINK-V3... It also can be programmed / debugged in this combination, BUT: You wrote, you want to use the motor profiler in MC workbench. THIS is definitely NOT working ! And to be honest: besides many bugs in the provided STSW-ROBOT-1 (if you can get it to be built...) the hardware doesn´t even come close to the promoted performance. The designers just miscalculated many values, it seems, they copied just the bullrunning motor from one of the nucleo kits (as they did for the board... they just copied the steval-3201 for that) . In original settings, @36V the whole system provides a maximum power of around 0.07 Amps. That leads to calculated (more or less) 2.52 watts. Of course the motor turns that way, but you will be able to stop it by hand... Not, what you would expect from a promoted "ready to run" solution with a 100W motor. This kit is just a waste of money. At the moment i prepare a list of major errors in setup, schematics and usability (and this is a LONG and reproducable list)...

I´m just curious, what Maxon and Würth will say, if i forward that to them. I believe, they are not amused, when they get in danger of feedback like "hey, what crap of motor do you sell ?" or "you really endanger your good name for something like that ?".

Just one small example: Check schematics (Fig. 4, Schematic board 2). R21 / R23 / R32 / R34 / R42 / R44 should have a value of 100R. Soldered on the back of the board you´ll find them with 1kOhm ... Same page: on top it says a calculated gain of 15, which should lead to a max. sensed current of 5.5 Amps... Try to set this in MC_workbench... You´ll find yourself stuck at a max. of 1.1 Amps ... Also the motor itself in the workbench: Originally rated with 2.72A rms, it´s crippled at 1.7A peak (which is even impossible to reach with the given setup...) And so on, and so on ...

Now the sad part: ST seems to have it necessary to lie at the customers about "how good they are". In reality, they have to show with that kit, how they can perform with sensorless foc. Meanwhile, i believe, the problem is just: without block commutation (and therefore it´s needed to use the included hall sensors. unfortunately they are even not configured in the pinout) it´s not possible to come even close to the rated performance of the motors (which is essential). But anyway: with block comm. , there´s so much torque ripple, that a smooth position control is problematic (if not impossible).

Oh... and by the way: Maybe the onboard mcu should be labeled as SPINF0A. atm it´s SPINF0 (Or is it a F0 and just the documents are wrong here?) What should we expect, if even simple resistors are wrong.

Oh... another major bug: try to make a movement of 3 revs in position mode. More is unfortunately impossible without tricks. somerwher between 1180 and 1200 degrees as target position, it begins to turn in the opposite direction to a "not expected" end position...

But anyway: take the example, in mainloop, comment out the comm-stuff and let it run: 1180 degrees target position, when movement finished: 0 degrees target position and so on... after a couple of minutes, you´ll recognice that the REAL position differs from what should be zero (we talk about absolute positions, not incremental !) ... As far, as i figured out, what happens here (And that´s NOT my job !): The encoder delivers 4*1024 pulses (and that´s also the coded ARR of the according timer. So every revolution it comes to an overflow. Shouldn´t be a problem, if handled correctly... But nope, the developers aren´t even able to do simple math correctly :( When moving just below 360 degrees, everything is fine...

oleg_sidorovich_1981
Associate II

thank you!!!

chaaalyy
Senior II

good morning 🙂

meanwhile i have an update for the behaviour of that robot-1-kit:

https://community.st.com/s/question/0D73W000000Piga/bugreport-mcsdk-543-and-temporary-fix?s1oid=00Db0000000YtG6&s1nid=0DB0X000000DYbd&emkind=chatterCommentNotification&s1uid=0050X0000089sTU&emtm=1588455523620&fromEmail=1&s1ext=0

with the changes, i made (just a temporary fix...), it should be possible to get useful results.

AdamDonovan
Associate II

Hmm, I must say I got this Kit because I thought it would be a good solution to get up and running quick.......im kinda dreading it now. Im not liking the almost non existing documentation. I've not used the stlink v3 or st products before and I am at a loss to even get started..which cable where. Im glad that at least there is some fixes Chaalyy and I really look forward to getting something usable. I've got a fairly decent little lab here for SMD work and perhaps Ill post some images of those resistor changes if it helps anyone.

It would be great of more of a walk through/documentation with setting these headers to the stlink v3 /including photos as its not included in the manual

as it stands its not working so well for positioning out of the box and Id like to start getting into programming/debugging.

I have the STLINK-V3SET in use and it´s fairly easy to connect. On the back of the debugger, you´ll find a 10x2 pin header, on the pcb of the STEVAL-ROBOT-1, you´ll find the same header. So just connect the (with the debugger) included flat cable at both ends, plug in a micro usb cable into the debugger and you´re up and running...

The resistors i mentioned in the post above: I did not measure them (fairly useless, while mounted and connected to something else 😉 )... I just read the value "1000" on them and according to the specifications of 4-digit values on smd resistors, it should be a 1k resistor then. (while 3 digits "100" would be 0.1 ohms)

Also connecting the motor is easy: Plugs are already mounted and just need to be plugged in =) The only cables, you´ll have to connect, are GND and VM (36V, 120W) from a power supply ...

Edit: I try to find the link for a basic documentation... Just a moment please 😉

chaaalyy
Senior II

Found it 🙂

https://www.st.com/resource/en/user_manual/dm00665765-getting-started-with-the-evalkitrobot1-stmicroelectronics.pdf

there you´ll find basically everything, you need for a quick start. Check chapter 4.3.x ... The "command set" via modbus is very limited. Unfortunately, the comm connector isn´t connected directly to the f0-mcu. So you HAVE to use RS485. Of course you can delete all the modbus stuff and develop your own comm interface to use all the possibilities of the mc library.

I for myself did all the tests with calling the according functions directly in main loop (and without comm....)

AdamDonovan
Associate II

Thanks Chaaalyy! Here is a photo of the programming cable hooked up in case it wasn't clear for anyone else. I did measure out those resistors and they all seem 100 ohm to me so should be ok. (the comm connector isn´t connected directly to the f0-mcu.)--geez. I would have thought to go with I2c not modbus but thats later/at the moment I dont even have a usb to rs485 so in the main loop I will probably also fiddle around there. Anyway I only got it today so tomorrow should be fun...I hope0693W000000WshmQAC.jpg