The Stepper Motor Electronics
My stepper motor is an older high torque oone with 200 steps per revolution and maximum 2.8A per phase. RS StockNo: 535-0417. See Datasheet here.
The power supply should be strong enough to power the motor and all our circuits too. I selected a 75W, 24V variant from MeanWell. See Datasheet here.
The stepper driver is the IFX9201 KIT from infineon. It offers a very easy way to drive drive a motor, since the complete driver code is delivered. See Infineon's site for details.
The home position detector consist of a hall sensor and a strong magnet on the rotating side. It's not very reliable but does the job... Maybe an adequate optical soulution would be better. The sensor is attaced to the arduino's interrupt pin.
Arduino Uno with the stepper motor kit and a 5V DC-DC converter on the left side to power the arduino and the kit.
Installing the IFX9201 KIT Firmware
For the Stepper Motor Control Shield with IFX9201 & XMC1300:
- Install Infineon’s DAVE developing Environment.
- Download the latest source code for the shield from Infineon’s website: Infineon-XMC1300Stepper9201_V3.2-SW-v01_00-EN.zip
- In order to adjust the settings in the source XMC1300 you have to import the DAVE project into your Workspace.
Importing the project into the DAVE workspace.
Install the Arduino Uno and the Infineon Stepper Kit Library
- Install Arduino IDE from arduino.cc.
- Download Infineon’s “Stepper-Motor-Shield-IFX9201-XMC1300” Library for Arduino from the official Infineon Github site.
- Follow the instructions on the Github site to install the “Stepper-Motor-Shield-IFX9201-XMC1300” library for the Arduino IDE.
It may happen that the IDE reports an error message after the import: “….Missing 'name' from library”. The reason is the incorrect coding of the “library.properties”. The coding must be UTF-8 and at the end of each line a “LF” character must be present. Windows uses CR and LF, which might be the problem:
Arduino IDE error message: “….Missing 'name' from library”.
Check the hidden characters with Notepad++.
Open the “C:\Users\$$YOUR_USERNAME$$\Documents\Arduino\libraries\Stepper-Motor-Shield-IFX9201-XMC1300-master\library.properties” file with Notepad++ and convert the file to UTF-8 (Encoding/Convert to UTF-8)
Convert the file to UTF-8.
Turn on the display of special characters.
Change all CR LF to LF by clicking on Search/Replace. Find What: “\r\n”. Replace: ”\n”. Select “Search Mode: Extended” and “Replace All”.
Settings for Replace.
Save the file. Test the Arduino IDE.
The imported library should show up in the arduino IDE collection.