Expansion SW library to control high power stepper motor(s) using IHM03A1 expansion board(s) with Powerstep01 driver.
Dependencies: X_NUCLEO_COMMON ST_INTERFACES
Dependents: IHM03A1_ExampleFor1Motor HelloWorld_IHM03A1 IHM03A1_ExampleFor3Motors KYPHOS_Stepper_Motor_Control
Fork of X_NUCLEO_IHM03A1 by
Motor Control Library
Library to handle the X-NUCLEO-IHM03A1 Motor Control Expansion Board based on the Powerstep01 component.
It features the:
- read and write of Powerstep01 registers
- Nucleo and expansion board configuration (GPIOs, PWMs, IRQs, etc.)
- Powerstep01 application commands handling
- FLAG and BUSY interrupt handling (alarm reporting)
- Daisy chain handling
The API allows to easily:
- perform various positioning, moves and stops
- get/set or monitor the motor positions
- set home position and mark another position
- get/set minimum and maximum speed
- get current speed
- get/set acceleration and deceleration
- get/set the step mode (up to 1/128)
- get/set the control method
- get/set parameters for voltage mode driving
- get/set parameters for current mode driving
- get/set parameters for gate driving
- configure various protections such as overcurrent detection
- enable/disable alarms
- handle step-clock
- get system status
Daisy-Chain Configuration
The IHM03A1 board can be stacked up to three times so that the Powerstep01 components will be connected in daisy-chain configuration. For this purpose, some resistors must be correctly connected on the boards as depicted here below:
Platform compatibility
Compatible platforms have been tested with the default configuration provided by the HelloWorld_IHM03A1 example.
History
Aligning to ARM mbed coding style.
2017-07-14, by Davidroid [Fri, 14 Jul 2017 12:51:38 +0000] rev 7
Aligning to ARM mbed coding style.
Aligned to ARM mbed coding style.
2017-05-08, by Davidroid [Mon, 08 May 2017 15:41:45 +0000] rev 6
Aligned to ARM mbed coding style.
Typo fixed.
2017-03-24, by Davidroid [Fri, 24 Mar 2017 10:24:39 +0000] rev 5
Typo fixed.
Aligning to ARM mbed coding style.
2017-03-24, by davide.aliprandi@st.com [Fri, 24 Mar 2017 10:58:48 +0100] rev 4
Aligning to ARM mbed coding style.
Fixed comments in GetSpeed, GetMaxSpeed, GetMinSpeed, GetAcceleration and GetDeceleration functions
2016-09-13, by nucleosam [Tue, 13 Sep 2016 08:55:39 +0000] rev 3
Fixed comments in GetSpeed, GetMaxSpeed, GetMinSpeed, GetAcceleration and GetDeceleration functions
To avoid a confusion, renamed Tval_Current_to_RegVal to Tval_RefVoltage_to_RegVal and Tval_RegVal_to_Current to Tval_RegVal_to_RefVoltage.
2016-04-13, by nucleosam [Wed, 13 Apr 2016 12:55:45 +0000] rev 2
To avoid a confusion, renamed Tval_Current_to_RegVal to Tval_RefVoltage_to_RegVal and Tval_RegVal_to_Current to Tval_RegVal_to_RefVoltage.
StepperMotor class modification and induced changes
2016-04-07, by nucleosam [Thu, 07 Apr 2016 16:11:47 +0000] rev 1
StepperMotor class modification and induced changes
Initial version
2016-04-05, by nucleosam [Tue, 05 Apr 2016 15:18:56 +0000] rev 0
Initial version