1
0
mirror of https://github.com/rene-dev/stmbl.git synced 2024-12-26 10:32:09 +00:00
Go to file
2015-12-03 11:24:30 +01:00
bootloader boot loader checks crc 2015-12-03 11:24:30 +01:00
conf term fix, rene fail fix 2015-11-27 19:23:04 +01:00
graphviz new pid, + limits, pmsm fix, psi fix 2015-09-13 23:38:15 +02:00
hw pcb errata update 2015-10-23 12:44:01 +02:00
inc initial import 2013-12-09 23:04:24 +01:00
lib HSE fix 2014-12-15 18:59:49 +01:00
memtemp autopadding testing 2015-11-08 06:25:09 -05:00
shared cry script, 16 and 32 bit cry 2015-12-02 02:34:17 +01:00
sim +pwm sim 2015-08-27 12:25:12 +02:00
src boot loader checks crc 2015-12-03 11:24:30 +01:00
stm32f103 moved shared stuff to shared, sections in linker script 2015-12-02 01:59:17 +01:00
term plist update 2015-12-01 20:46:59 +01:00
tools boot loader checks crc 2015-12-03 11:24:30 +01:00
.gitignore cry script, 16 and 32 bit cry 2015-12-02 02:34:17 +01:00
.travis.yml Update .travis.yml 2015-11-21 12:19:51 +01:00
cleanup.sh cleanup cam files 2015-03-09 23:19:23 +01:00
COPYING License 2014-11-25 01:19:39 +01:00
Makefile boot loader checks crc 2015-12-03 11:24:30 +01:00
README.md Update README.md 2015-11-18 15:49:51 +01:00
stm32_flash.ld linker script 2015-12-01 00:08:30 +01:00

Build Status

Build Log: https://travis-ci.org/rene-dev/stmbl

DISCLAIMER

THE AUTHORS OF THIS SOFTWARE ACCEPT ABSOLUTELY NO LIABILITY FOR ANY HARM OR LOSS RESULTING FROM ITS USE. IT IS EXTREMELY UNWISE TO RELY ON SOFTWARE ALONE FOR SAFETY. Any machinery capable of harming persons must have provisions for completely removing power from all motors, etc, before persons enter any danger area. All machinery must be designed to comply with local and national safety codes, and the authors of this software can not, and do not, take any responsibility for such compliance.

This software is released under the GPLv3.

stmbl

přečtěte si seznam chyb ve wiki

PCBs are now available, let me know if you are interested.

IRC: #stmbl on irc.hackint.eu

stmbl is an open source servo drive designed for Retrofitting CNC machines and Robots. It supports Industrial AC and DC servos with up to 320V and 1kW.

Documentation about the PCB and pinout of the feedback connector:

https://github.com/rene-dev/stmbl/wiki/Pinouts

https://github.com/rene-dev/stmbl/wiki/PCB

Hardware version 3.2

top bot

Driving a Bosch Turboscara

https://www.youtube.com/watch?v=Ue98HE76paI

https://www.youtube.com/watch?v=d6NH1W7DUnQ

Drivetest

https://www.youtube.com/watch?v=sMeV4SCu4TA

Drivetest with asymmetrical load

https://www.youtube.com/watch?v=seEV_i7o1NI

####Supported Motors

  • Synchronous AC Servos
  • DC Servos
  • 2 Phase HF spindle motors
  • IRAMX Hardware testet up to 320V

####Supported Feedback systems

  • Resolvers
  • Incremental encoders
  • sin/cos encoder interpolation
  • Mitsubishi absolute encoders
  • Sanyo Denki absolute encoders
  • Sick HIPERFACE®

####TODO

  • AC Async
  • saving parameters to flash

####Directories

  • hw/eagle/ Eagle board files and schematics
  • hw/spice/ Spice simulation for resolver interface
  • src/ STM32F4 code, command, feedback and control loop
  • stm32f103/ STM32F1 code, running on the HV side, generating PWM
  • term/ Terminal with scope and local history. Supports UHU servo and stmbl.

####Building the firmware

Requirements
Flashing

Add gcc and stlink to your $PATH

make
make burn

####Building Servoterm

Requirements
Compiling
cd term/
mkdir build/
cd build/
cmake ../
make

####Using Servoterm

Testing HAL

HAL can be tested without any hardware connected to the STM32F4discovery.

  • Flash STM32F4discovery(STlink and USB OTG must be connected)
  • Launch Servoterm, Click refresh, and connecto to STM32 Virtual ComPort

entering 'list' prints a list of hal pins. The current default config is for a 4 pole AC permanent magnet motor with resolver feedback, using an encoder for command.

net0.fb <= res0.pos = 0.000000

net0.fb is driven by res0.pos, and its current value is 0. Pins can be connected to other pins, or fixed values.

This example connects the sine wave generatror to wave view 0. Offset and gain can be controlled with the sliders below Channel 1(black).

term0.wave0 = sim0.sin
sim0.amp = 10
sim0.freq = 5

To disconnect a pin, connect it to itself

term0.wave0 = term0.wave0