Εγχειρίδιο χρήστη UM2300 X-CUBE-SPN14 Stepper Motor Driver Software Expansion for STM32Cube

Εισαγωγή
Το πακέτο επέκτασης X-CUBE-SPN14 για STM32Cube σάς δίνει τον πλήρη έλεγχο των λειτουργιών βηματικού κινητήρα.
Όταν συνδυάζεται με μία ή περισσότερες πλακέτες επέκτασης X-NUCLEO-IHM14A1, αυτό το λογισμικό επιτρέπει σε μια συμβατή πλακέτα ανάπτυξης STM32 Nucleo να ελέγχει έναν ή περισσότερους βηματικούς κινητήρες.
Είναι χτισμένο πάνω στην τεχνολογία λογισμικού STM32Cube για εύκολη φορητότητα σε διαφορετικούς μικροελεγκτές STM32.
Το λογισμικό συνοδεύεται από ωςampυλοποίηση για έναν βηματικό κινητήρα. Είναι συμβατό με πλακέτες ανάπτυξης NUCLEO-F401RE, NUCLEOF334R8, NUCLEO-F030R8 ή NUCLEO-L053R8 με μια πλακέτα επέκτασης X-NUCLEO-IHM14A1 τοποθετημένη στην κορυφή.
ΣΧΕΤΙΚΟΙ ΣΥΝΔΕΣΜΟΙ
Επισκεφθείτε το οικοσύστημα STM32Cube web σελίδα στο www.st.com για περισσότερες πληροφορίες
Ακρωνύμια και συντομογραφίες
Πίνακας 1. Κατάλογος ακρωνύμιων
|
Ακρώνυμο |
Περιγραφή |
| API |
Διεπαφή προγραμματισμού εφαρμογών |
|
BSP |
Πακέτο υποστήριξης διοικητικού συμβουλίου |
| CMSIS |
Πρότυπο διεπαφής λογισμικού μικροελεγκτή Cortex® |
|
HAL |
Επίπεδο αφαίρεσης υλικού |
| IDE |
Ολοκληρωμένο περιβάλλον ανάπτυξης |
|
LED |
Δίοδος εκπομπής φωτός |
Υπερview
Το πακέτο λογισμικού X-CUBE-SPN14 επεκτείνει τη λειτουργικότητα του STM32Cube. Τα βασικά χαρακτηριστικά του περιλαμβάνουν:
- Ένα επίπεδο προγράμματος οδήγησης για πλήρη διαχείριση της συσκευής STSPIN820 (οδηγός βηματικού κινητήρα χαμηλής ισχύος) που είναι ενσωματωμένη στην πλακέτα επέκτασης X-NUCLEO-IHM14A1
- Λειτουργίες ανάγνωσης και εγγραφής παραμέτρων συσκευής, διαμόρφωση GPIO, PWM και IRQ, micro-stepping, θέση κατεύθυνσης, ταχύτητα, επιτάχυνση, επιβράδυνση και έλεγχοι ροπής, αυτόματη διαχείριση διακόπτη πλήρους βήματος. Επιλογή λειτουργίας διακοπής υψηλής αντίστασης ή αναμονής, ενεργοποίηση και διαχείριση αναμονής
- Χειρισμός διακοπής σφάλματος
- Έλεγχος ενός βηματικού κινητήρα sampη εφαρμογή
- Εύκολη φορητότητα σε διαφορετικές οικογένειες MCU, χάρη στο STM32Cube
- Δωρεάν, φιλικοί προς το χρήστη όροι άδειας χρήσης
Το λογισμικό υλοποιεί ψευδοκαταχωρητές και εντολές κίνησης από:
- διαμόρφωση χρονόμετρων που χρησιμοποιούνται για τη δημιουργία βηματικού ρολογιού και τόμουtagε αναφορά
- διαχείριση παραμέτρων συσκευής όπως επιτάχυνση, επιβράδυνση, ελάχ. και μέγ. ταχύτητα, θέσεις στο speed profile όρια, θέση σήμανσης, λειτουργία μικροβήματος, κατεύθυνση, κατάσταση κίνησης κ.λπ.
Το λογισμικό χειρίζεται μία συσκευή STSPIN820.
Σε κάθε τέλος παλμού χρονοδιακόπτη, εκτελείται μια επανάκληση για να καλέσετε τον χειριστή βηματικού ρολογιού που ελέγχει την κίνηση του κινητήρα
με τη διαχείριση:
- κατάσταση κίνησης (π.χ. σταμάτημα κινητήρα στον προορισμό-στόχο)
- κατεύθυνση κινητήρα μέσω του επιπέδου GPIO
- σχετική και απόλυτη θέση κινητήρα σε μικροβήματα
- την ταχύτητα μέσω μηδενικής, θετικής και αρνητικής επιτάχυνσης
Η ταχύτητα ρυθμίζεται μεταβάλλοντας τη συχνότητα του ρολογιού βημάτων και, προαιρετικά, τη λειτουργία βήματος όταν είναι ενεργοποιημένη η λειτουργία αυτόματου διακόπτη πλήρους βήματος. Ο χρονοδιακόπτης που χρησιμοποιείται για το ρολόι βημάτων έχει ρυθμιστεί σε λειτουργία σύγκρισης εξόδου. Μια νέα τιμή καταγραφής σύγκρισης καταγραφής υπολογίζεται σε κάθε κλήση χειριστή ρολογιού βήματος για να επιτευχθεί έλεγχος συχνότητας.
Η ταχύτητα είναι μια γραμμική συνάρτηση της συχνότητας του ρολογιού βημάτων για μια δεδομένη λειτουργία μικρο-βήματος, η οποία μπορεί να μεταβληθεί από το λογισμικό από το πλήρες έως το 1/256ο βήμα.
Για να χρησιμοποιήσετε τη βιβλιοθήκη προγραμμάτων οδήγησης STSPIN820, πρέπει να εκτελέσετε τη συνάρτηση προετοιμασίας που:
- ρυθμίζει τα απαιτούμενα GPIO για να ενεργοποιήσει τις γέφυρες και να διαχειριστεί την καρφίτσα σφάλματος EN\FAULT, αποκλειστική MODE1,
MODE2 και MODE3 καρφίτσες επιλογής βημάτων, η ακίδα DIR για την κατεύθυνση του κινητήρα, η ακίδα DECAY για τη λειτουργία αποσύνθεσης
επιλογή και την καρφίτσα επαναφοράς σε αναμονή STBY\RESET. - ρυθμίζει το χρονόμετρο σε λειτουργία σύγκρισης εξόδου για τον ακροδέκτη STCK και τον τόμο αναφοράς χρονοδιακόπτηtage παραγωγή σε λειτουργία PWM για ακίδα REF.
- φορτώνει τις παραμέτρους του προγράμματος οδήγησης με τιμές από το stspin820_target_config.h ή που ορίζονται στην κύρια συνάρτηση χρησιμοποιώντας μια αποκλειστική δομή προετοιμασίας.
Οι παράμετροι του προγράμματος οδήγησης μπορούν να τροποποιηθούν μετά την αρχικοποίηση καλώντας συγκεκριμένες συναρτήσεις. Μπορείτε επίσης να γράψετε λειτουργίες επανάκλησης και να τις επισυνάψετε σε: - ο χειριστής διακοπής σημαίας για την εκτέλεση ορισμένων ενεργειών όταν αναφέρεται υπερβολικό ρεύμα ή θερμικός συναγερμός
- το πρόγραμμα χειρισμού σφαλμάτων που καλείται από τη βιβλιοθήκη όταν αναφέρει ένα σφάλμα Οι επόμενες εντολές κίνησης περιλαμβάνουν:
- BSP_MotorControl_Move για να μετακινήσετε έναν δεδομένο αριθμό βημάτων σε μια συγκεκριμένη κατεύθυνση
- BSP_MotorControl_GoTo, BSP_MotorControl_GoHome, BSP_MotorControl_GoMark για μετάβαση σε μια συγκεκριμένη θέση χρησιμοποιώντας τη συντομότερη διαδρομή
- BSP_MotorControl_CmdGoToDir για να μεταβείτε σε μια συγκεκριμένη κατεύθυνση σε μια συγκεκριμένη θέση
- BSP_MotorControl_Run για να εκτελείται επ' αόριστον
Το speed profile χειρίζεται πλήρως ο μικροελεγκτής. Ο κινητήρας ξεκινά να κινείται στη ρύθμιση ελάχιστης ταχύτητας BSP_MotorControl_SetMinSpeed, η οποία στη συνέχεια αλλάζει σε κάθε βήμα από το
BSP_MotorControl_SetAcceleration Τιμή επιτάχυνσης.
Εάν η θέση στόχου μιας εντολής κίνησης είναι αρκετά μακριά, ο κινητήρας εκτελεί μια τραπεζοειδή κίνηση με:
- επιτάχυνση με την παράμετρο επιτάχυνσης συσκευής
- παραμένοντας σταθερό στη μέγιστη ταχύτητα BSP_MotorControl_SetMaxSpeed
- επιβράδυνση με BSP_MotorControl_SetDeceleration
- σταματώντας στον προορισμό-στόχο
Εάν η θέση στόχος είναι πολύ κοντά για να φτάσει ο κινητήρας στη μέγιστη ταχύτητα, εκτελεί μια τριγωνική κίνηση που περιλαμβάνει: - επιτάχυνση
- επιβράδυνση
- σταματώντας στον προορισμό-στόχο
Μια εντολή κίνησης μπορεί να σταματήσει οποιαδήποτε στιγμή με το BSP_MotorControl_SoftStop να μειώνει προοδευτικά την ταχύτητα χρησιμοποιώντας την παράμετρο επιβράδυνσης ή την εντολή BSP_MotorControl_HardStop που σταματά αμέσως τον κινητήρα. Η γέφυρα τροφοδοσίας απενεργοποιείται αυτόματα όταν ο κινητήρας σταματά, εάν είχε ρυθμιστεί προηγουμένως η λειτουργία διακοπής HIZ_MODE (BSP_MotorControl_SetStopMode).
Η κατεύθυνση, η ταχύτητα, η επιτάχυνση και η επιβράδυνση μπορούν να αλλάξουν είτε όταν ο κινητήρας είναι σταματημένος είτε όταν ζητηθεί η κίνηση μέσω του BSP_MotorControl_Run.
Για να αποκλείσετε νέες εντολές πριν την ολοκλήρωση των προηγούμενων, το BSP_MotorControl_WaitWhileActive κλειδώνει την εκτέλεση του προγράμματος μέχρι να σταματήσει ο κινητήρας.
Το BSP_MotorControl_SelectStepMode μπορεί να αλλάξει τη λειτουργία βήματος από πλήρη σε 1/256ο βήμα. Όταν αλλάξει η λειτουργία βήματος, η συσκευή και η τρέχουσα θέση και ταχύτητα επαναφέρονται.
Αρχιτεκτονική
Αυτή η επέκταση λογισμικού συμμορφώνεται πλήρως με την αρχιτεκτονική STM32Cube και την επεκτείνει για να επιτρέψει την ανάπτυξη εφαρμογών χρησιμοποιώντας προγράμματα οδήγησης βηματικού κινητήρα.
Εικόνα 1. Αρχιτεκτονική λογισμικού X-CUBE-SPN14

Το λογισμικό βασίζεται στο στρώμα αφαίρεσης hardare STM32CubeHAL για τον μικροελεγκτή STM32. Η συσκευασία επεκτείνει το STM32Cube με ένα πακέτο υποστήριξης πλακέτας (BSP) για την πλακέτα επέκτασης ελέγχου κινητήρα και ένα πρόγραμμα οδήγησης εξαρτημάτων BSP για το STSPIN820 χαμηλής έντασηςtage πρόγραμμα οδήγησης βηματικού κινητήρα.
Τα επίπεδα λογισμικού που χρησιμοποιούνται από το λογισμικό εφαρμογής είναι:
- Στρώμα STM32Cube HAL: ένα απλό, γενικό και πολλαπλών περιπτώσεων σύνολο API (διεπαφές προγραμματισμού εφαρμογών)
για αλληλεπίδραση με τα ανώτερα επίπεδα εφαρμογής, βιβλιοθήκης και στοίβας. Αποτελείται από γενικά και επέκταση API που βασίζονται
σε μια κοινή αρχιτεκτονική, έτσι ώστε τα στρώματα που είναι χτισμένα σε αυτό, όπως το επίπεδο ενδιάμεσου λογισμικού, να μπορούν να λειτουργούν χωρίς να απαιτούνται συγκεκριμένες διαμορφώσεις υλικού μονάδας μικροελεγκτή (MCU). Αυτή η δομή βελτιώνει την επαναχρησιμοποίηση του κώδικα βιβλιοθήκης και εγγυάται εύκολη φορητότητα σε άλλες συσκευές.
Επίπεδο πακέτου υποστήριξης πλακέτας (BSP).: υποστηρίζει τα περιφερειακά στην πλακέτα STM32 Nucleo, εκτός από το
MCU. Αυτό το περιορισμένο σύνολο API παρέχει μια διεπαφή προγραμματισμού για ορισμένα περιφερειακά ειδικά για την πλακέτα, όπως το LED και το κουμπί χρήστη, και βοηθά στον προσδιορισμό της συγκεκριμένης έκδοσης πλακέτας. Το σύστημα ελέγχου κινητήρα BSP παρέχει τη διεπαφή προγραμματισμού για διάφορα εξαρτήματα του οδηγού κινητήρα. Συνδέεται με το εξάρτημα BSP για το πρόγραμμα οδήγησης κινητήρα STSPIN820 στο λογισμικό X-CUBE-SPN14.
Δομή φακέλου

Το λογισμικό βρίσκεται σε δύο κύριους φακέλους:
- Οδηγοί, με:
- το STM32Cube HAL files στους υποφακέλους STM32L0xx_HAL_Driver, STM32F0xx_HAL_Driver, STM32F3xx_HAL_Driver ή STM32F4xx_HAL_Driver. Αυτά τα fileΤα s λαμβάνονται απευθείας από το πλαίσιο STM32Cube και περιλαμβάνουν μόνο εκείνα που απαιτούνται για τη λειτουργία του προγράμματος οδήγησης κινητήρα π.χamples.
- ένας φάκελος CMSIS με το CMSIS (πρότυπο διασύνδεσης λογισμικού μικροελεγκτή Cortex®), στρώμα αφαίρεσης υλικού ανεξάρτητο από τον προμηθευτή για τη σειρά επεξεργαστών Cortex-M από την ARM. Αυτός ο φάκελος είναι επίσης αμετάβλητος από το πλαίσιο STM32Cube.
- ένα φάκελο BSP με τον κωδικό files για τη διαμόρφωση X-NUCLEO-IHM14A1, το πρόγραμμα οδήγησης STSPIN820 και το API ελέγχου κινητήρα.
- Έργα, που περιέχει πολλές χρήσεις π.χampτου προγράμματος οδήγησης κινητήρα STSPIN820 για διαφορετικές πλατφόρμες STM32 Nucleo.
Φάκελος BSP
Το λογισμικό X-CUBE-SPN14 περιλαμβάνει τα BSP που περιγράφονται στις ακόλουθες υποενότητες.
STM32L0XX-Nucleo/STM32F0XX-Nucleo/STM32F3XX Nucleo/STM32F4XX-Nucleo BSPs
Αυτά τα BSP παρέχουν μια διεπαφή για κάθε συμβατή πλακέτα ανάπτυξης STM32 Nucleo για διαμόρφωση και χρήση των περιφερειακών της με την πλακέτα επέκτασης X-NUCLEO-IHM14A1. Κάθε υποφάκελος έχει δύο.c/.h file ζεύγη:
- stm32XXxx_nucleo.c/h: αυτά τα μη τροποποιημένα πλαίσια STM32Cube fileΠαρέχει το κουμπί χρήστη και τις λειτουργίες LED για τη συγκεκριμένη πλακέτα STM32 Nucleo.
- stm32XXxx_nucleo_ihm14a1.c/h: αυτά fileΤα s είναι αφιερωμένα στη διαμόρφωση των PWM, των GPIO και της ενεργοποίησης/απενεργοποίησης διακοπής που απαιτούνται για τη λειτουργία της πλακέτας επέκτασης X NUCLEO-IHM14A1.
Έλεγχος κινητήρα BSP
Αυτό το BSP παρέχει μια κοινή διεπαφή για πρόσβαση στις λειτουργίες του προγράμματος οδήγησης διαφόρων προγραμμάτων οδήγησης κινητήρα, όπως L6474, powerSTEP01, L6208 και STSPIN820, μέσω MotorControl/motorcontrol.c/h file ζεύγος.
Αυτοί files ορίζει όλες τις λειτουργίες διαμόρφωσης και ελέγχου του προγράμματος οδήγησης, οι οποίες στη συνέχεια αντιστοιχίζονται στις λειτουργίες του στοιχείου του οδηγού κινητήρα που χρησιμοποιείται στη δεδομένη πλακέτα επέκτασης μέσω της δομής motorDrv_t file (καθορίζεται στο Components\Common\motor.h.). Αυτή η δομή ορίζει μια λίστα δεικτών συνάρτησης που συμπληρώνονται κατά την εγκατάστασή της στο αντίστοιχο εξάρτημα οδηγού κινητήρα. Για το X-CUBE-SPN14, η δομή ονομάζεται stspin820Drv (βλ file: BSP\Components\stspin820\stspin820.c).
Καθώς το BSP ελέγχου κινητήρα είναι κοινό για όλες τις πλακέτες επέκτασης του οδηγού κινητήρα, ορισμένες λειτουργίες δεν είναι διαθέσιμες για μια δεδομένη πλακέτα επέκτασης. Οι μη διαθέσιμες λειτουργίες αντικαθίστανται από μηδενικούς δείκτες κατά την εγκατάσταση της δομής motorDrv_t στο στοιχείο προγράμματος οδήγησης.
Εξάρτημα STSPIN280 BSP
Το στοιχείο STSPIN820 BSP παρέχει τις λειτουργίες προγράμματος οδήγησης του προγράμματος οδήγησης κινητήρα STSPIN820 στον φάκελο
stm32_cube\Drivers\BSP\Components\STSPIN820.
Αυτός ο φάκελος έχει 3 files:
- stspin820.c: βασικές λειτουργίες του προγράμματος οδήγησης STSPIN820
- stspin820.h: δήλωση των λειτουργιών του προγράμματος οδήγησης STSPIN820 και των σχετικών ορισμών τους
- stspin820_target_config.h: προκαθορισμένες τιμές για τις παραμέτρους STSPIN820 και για το περιβάλλον των συσκευών κινητήρα
Φάκελος έργου
Για κάθε πλατφόρμα STM32 Nucleo, ένα π.χampΤο έργο είναι διαθέσιμο στο stm32_cube\Projects\Multi\Examples\MotionControl\:
- IHM14A1_ΠαρampleFor1Motor exampΛειτουργίες ελέγχου για διαμορφώσεις ενός κινητήρα
Ο πρώηνampΤο le έχει έναν φάκελο για κάθε συμβατό IDE:
- EWARM για ενσωματωμένο πάγκο εργασίας IAR
- MDK-ARM για ARM/Keil µVision
- STM32CubeIDE για ολοκληρωμένο περιβάλλον ανάπτυξης για STM32
Ο παρακάτω κώδικας fileΠεριλαμβάνονται επίσης:
- inc\main.h: Κύρια κεφαλίδα file
- inc\ stm32xxxx_hal_conf.h: Διαμόρφωση HAL file
- inc\stm32xxxx_it.h: κεφαλίδα για το πρόγραμμα χειρισμού διακοπών
- src\main.c: κύριο πρόγραμμα (κωδικός π.χampβασίζεται στη βιβλιοθήκη ελέγχου κινητήρα για STSPIN820)
- src\stm32xxxx_hal_msp.c: Ρουτίνες αρχικοποίησης HAL
- src\stm32xxxx_it.c: χειριστής διακοπής
- src\system_stm32xxxx.c: προετοιμασία συστήματος
- src\clock_xx.c: προετοιμασία ρολογιού
Απαιτούμενοι πόροι λογισμικού
Ο έλεγχος MCU μιας μεμονωμένης πλακέτας STSPIN820 (μία πλακέτα X-NUCLEO IHM14A1) και η επικοινωνία μεταξύ των δύο γίνεται μέσω επτά GPIO (STBY\RESET, EN\FAULT, MODE1, MODE2, MODE3, DIR, DECAY pins) και μιας ακίδας PWM για REF . Το GPIO για την ακίδα STCK έχει ρυθμιστεί ώστε να χρησιμοποιείται ως εναλλακτική συνάρτηση TIMER OUTPUT COMPARE.
Για τον χειρισμό των συναγερμών υπερέντασης και υπερθερμοκρασίας, το λογισμικό X-CUBE-SPN14 χρησιμοποιεί μια εξωτερική διακοπή που έχει ρυθμιστεί στο GPIO που χρησιμοποιείται για τον ακροδέκτη EN\FAULT, αφού έχει ενεργοποιήσει ή απενεργοποιήσει τις γέφυρες ισχύος.
Πίνακας 2. Απαιτούμενοι πόροι για το λογισμικό X-CUBE-SPN14
|
Πόροι F4xx |
Πόροι F3xx | Πόροι F0xx | Πόροι L0xx | Καρφίτσα | Χαρακτηριστικά (σανίδα) |
| Θύρα A GPIO 10
EXTI15_10_IRQn |
Θύρα A GPIO 10
EXTI15_10_IRQn |
Θύρα A GPIO 10
EXTI4_15_IRQn |
Θύρα A GPIO 10
EXTI4_15_IRQn |
D2 |
EN/FAULT (EN) |
|
Θύρα B GPIO 3 Χρονοδιακόπτης2 Ch2 |
Θύρα B GPIO 3
Χρονοδιακόπτης2 Ch2 |
Θύρα B GPIO 3
Χρονοδιακόπτης15 Ch1 |
Θύρα B GPIO 3
Χρονοδιακόπτης2 Ch2 |
D3 |
STCK
(CLK) |
|
Θύρα B GPIO 4 |
D5 |
ΦΘΟΡΑ
(ΔΕΚΕΜΒΡΙΟΣ) |
|||
| Θύρα A GPIO 8 |
D7 |
ΚΑΤΕΥΘΥΝΣΗ (DIR) |
|||
| Θύρα A GPIO 9 |
D8 |
STBY/RESET (STBY) |
|||
|
Pή C GPIO 7 Χρονοδιακόπτης3 Ch2 |
Θύρα C GPIO 7
Χρονοδιακόπτης3 Ch2 |
Θύρα C GPIO 7
Χρονοδιακόπτης3 Ch2 |
Θύρα C GPIO 7
Χρονοδιακόπτης22 Ch2 |
D9 |
PWM REF
(REF) |
|
Θύρα A GPIO 7 |
Δ11 |
MODE3
(M3) |
|||
|
Θύρα A GPIO 6 |
Δ12 |
MODE2 (M2) |
|||
| Θύρα A GPIO 5 |
Δ13 |
MODE1 (M1) |
|||
API
Το X-CUBE-SPN14 API ορίζεται στο BSP ελέγχου κινητήρα. Οι λειτουργίες του περιέχουν το πρόθεμα "BSP_MotorControl_".
Σημείωμα: Δεν είναι διαθέσιμες όλες οι λειτουργίες αυτής της μονάδας για το STSPIN820 και ως εκ τούτου την πλακέτα επέκτασης X-NUCLEO-IHM14A1.
Οι πλήρεις περιγραφές συναρτήσεων API χρήστη και παραμέτρων μεταγλωττίζονται σε ένα HTML file στο φάκελο Documentation του λογισμικού.
Sampη περιγραφή της εφαρμογής
Ένας πρώηνampΗ εφαρμογή που χρησιμοποιεί την πλακέτα επέκτασης X-NUCLEO-IHM14A1 με συμβατή πλακέτα ανάπτυξης STM32 Nucleo παρέχεται στον κατάλογο Projects, με έτοιμη για κατασκευή για πολλαπλά IDE (βλ. Ενότητα 2.3.2 φάκελο Project).
Οδηγός εγκατάστασης συστήματος
Περιγραφή υλικού
- STM32 Nucleo
Οι πλακέτες ανάπτυξης STM32 Nucleo παρέχουν έναν προσιτό και ευέλικτο τρόπο στους χρήστες να δοκιμάζουν λύσεις και να κατασκευάζουν πρωτότυπα με οποιαδήποτε σειρά μικροελεγκτών STM32.
Η υποστήριξη συνδεσιμότητας Arduino και οι υποδοχές ST morpho διευκολύνουν την επέκταση της λειτουργικότητας του
Πλατφόρμα ανοιχτής ανάπτυξης STM32 Nucleo με μεγάλη γκάμα εξειδικευμένων πλακών επέκτασης για να διαλέξετε.
Η πλακέτα STM32 Nucleo δεν απαιτεί ξεχωριστούς ανιχνευτές καθώς ενσωματώνει τον εντοπισμό σφαλμάτων ST-LINK/V2-1/
προγραμματιστής.
Η πλακέτα STM32 Nucleo συνοδεύεται από την ολοκληρωμένη βιβλιοθήκη λογισμικού STM32 HAL μαζί με διάφορα συσκευασμένα προγράμματα π.χ.amples για διαφορετικά IDE (IAR EWARM, Keil MDK-ARM, STM32CubeIDE, mbed και GCC/LLVM).
Όλοι οι χρήστες του STM32 Nucleo έχουν δωρεάν πρόσβαση στους διαδικτυακούς πόρους mbed (μεταγλωττιστής, C/C++ SDK και προγραμματιστής
κοινότητα) στο www.mbed.org για να δημιουργήσετε εύκολα ολοκληρωμένες εφαρμογές.
Εικόνα 3. Πλακέτα Nucleo STM32

- Πλακέτα επέκτασης προγράμματος οδήγησης βηματικού κινητήρα X-NUCLEO-IHM14A1
Η πλακέτα επέκτασης προγράμματος οδήγησης κινητήρα X-NUCLEO-IHM14A1 βασίζεται στο μονολιθικό πρόγραμμα οδήγησης STSPIN820 για βηματικούς κινητήρες.
Αντιπροσωπεύει μια προσιτή, εύχρηστη λύση για την οδήγηση βηματικών κινητήρων στο έργο STM32 Nucleo, υλοποιώντας εφαρμογές οδήγησης κινητήρα, όπως εκτυπωτές 2D/3D, ρομποτική και κάμερες ασφαλείας.
Το STSPIN820 εφαρμόζει έλεγχο ρεύματος PWM με σταθερό χρόνο OFF ρυθμιζόμενο μέσω μιας εξωτερικής αντίστασης και ανάλυση microstepping μέχρι το 256ο βήμα.
Η πλακέτα επέκτασης X-NUCLEO-IHM14A1 είναι συμβατή με την υποδοχή Arduino UNO R3 και την υποδοχή ST morpho, ώστε να μπορεί να συνδεθεί στην πλακέτα ανάπτυξης STM32 Nucleo και να στοιβάζεται με πρόσθετες πλακέτες επέκτασης X-NUCLEO.

- Διάφορα εξαρτήματα υλικού
Για να ολοκληρώσετε τη ρύθμιση υλικού, θα χρειαστείτε:- 1 διπολικός βηματικός κινητήρας (7 έως 45 V).
- ένα εξωτερικό τροφοδοτικό DC με δύο ηλεκτρικά καλώδια για την πλακέτα X-NUCLEO-IHM14A1
- ένα καλώδιο USB τύπου Α έως mini-B για τη σύνδεση της πλακέτας STM32 Nucleo σε έναν υπολογιστή
- Απαιτήσεις λογισμικού
Τα ακόλουθα στοιχεία λογισμικού απαιτούνται προκειμένου να ρυθμιστεί το κατάλληλο περιβάλλον ανάπτυξης για
δημιουργία εφαρμογών με βάση την πλακέτα επέκτασης του προγράμματος οδήγησης κινητήρα:- X-CUBE-SPN14 STM32Cube επέκταση για STSPIN820 χαμηλής έντασηςtagανάπτυξη εφαρμογών οδηγού βηματικού κινητήρα. Το υλικολογισμικό X-CUBE-SPN14 και η σχετική τεκμηρίωση είναι διαθέσιμα στο www.st.com.
- Ένα από τα ακόλουθα εργαλεία ανάπτυξης και μεταγλωττιστές:
- Κέιλ ΡεάλView Κιτ ανάπτυξης μικροελεγκτή (MDK-ARM) αλυσίδα εργαλείων V5.27
- IAR Embedded Workbench for ARM (EWARM) εργαλειοθήκη V8.50
- Ενσωματωμένο περιβάλλον ανάπτυξης για STM32 (STM32CubeIDE)
Ρύθμιση υλικού και λογισμικού
Ρύθμιση για κίνηση ενός μόνο κινητήρα
Διαμορφώστε τους ακόλουθους βραχυκυκλωτήρες στην πλακέτα STM32 Nucleo:
- Απενεργοποίηση JP1
- JP5 (PWR) στην πλευρά UV5
- JP6 (IDD) ενεργοποιημένο
Διαμορφώστε την πλακέτα επέκτασης X-NUCLEO-IHM14A1 ως εξής: - Συντονίστε το ποτενσιόμετρο R7 στο 1 kΩ.
- Ρυθμίστε τον διακόπτη S1, S2, S3 και S4 στην πτυσσόμενη πλευρά όπως στην Εικόνα 4. Βηματικός κινητήρας X-NUCLEO-IHM14A1
πλακέτα επέκτασης προγράμματος οδήγησης. Η λειτουργία micro-stepping επιλέγεται μέσω των MODE1, MODE2 και MODE3
επίπεδα που ελέγχονται από την πλακέτα STM32 Nucleo.
Αφού διαμορφωθεί σωστά η πλακέτα: - Συνδέστε την πλακέτα επέκτασης X-NUCLEO-IHM14A1 πάνω από την πλακέτα STM32 Nucleo μέσω των υποδοχών Arduino UNO
- Συνδέστε την πλακέτα STM32 Nucleo σε έναν υπολογιστή με το καλώδιο USB μέσω της υποδοχής USB CN1 για να τροφοδοτήσετε την πλακέτα
- Ενεργοποιήστε την πλακέτα επέκτασης X-NUCLEO-IHM14A1 συνδέοντας τις υποδοχές Vin και Gnd σε ένα τροφοδοτικό DC
- Συνδέστε τον βηματικό κινητήρα στους συνδετήρες γέφυρας X-NUCLEO IHM14A1 A+/- και B+/-

Μόλις η εγκατάσταση του συστήματος είναι έτοιμη:
- Ανοίξτε την αλυσίδα εργαλείων που προτιμάτε
- Ανάλογα με την πλακέτα STM32 Nucleo, ανοίξτε το έργο λογισμικού από:
- \stm32_cube\Projects\Multi\Examples\MotionControl\IHM14A1_ExampleFor1Motor\YourToolChainNam
e\STM32F401RE-Nucleo for Nucleo STM32F401 - \stm32_cube\Projects\Multi\Examples\MotionControl\IHM14A1_ExampleFor1Motor\YourToolChainNam
e\STM32F030R8-Nucleo for Nucleo STM32F334 - \stm32_cube\Projects\Multi\Examples\MotionControl\IHM14A1_ExampleFor1Motor\YourToolChainName\STM32F030R8-Nucleo for Nucleo STM32F030
- \stm32_cube\Projects\Multi\Examples\MotionControl\IHM14A1_ExampleFor1Motor\YourToolChainName\STM32L053R8-Nucleo for Nucleo STM32L053
- \stm32_cube\Projects\Multi\Examples\MotionControl\IHM14A1_ExampleFor1Motor\YourToolChainNam
- Για να προσαρμόσετε τις προεπιλεγμένες παραμέτρους STSPIN820 στο low voltagΧαρακτηριστικά βηματικού κινητήρα, είτε:
- χρησιμοποιήστε το BSP_MotorControl_Init με τον δείκτη NULL και ανοίξτε το stm32_cube\ Drivers\ BSP\Components\ STSPIN820\ STSPIN820_target_config.h για να τροποποιήσετε τις παραμέτρους σύμφωνα με τις ανάγκες σας
- – χρησιμοποιήστε το BSP_MotorControl_Init με τη διεύθυνση της δομής initDevicesParameters με τις κατάλληλες τιμές.
- Ανοικοδομήστε όλα files και φορτώστε την εικόνα σας στη μνήμη προορισμού.
- Τρέξτε το πρώηνample. Ο κινητήρας ξεκινά αυτόματα (Δείτε main.c για λεπτομέρειες της ακολουθίας επίδειξης).
Ιστορικό αναθεωρήσεων
|
Ημερομηνία |
Εκδοχή | Αλλαγές |
|
17-Οκτ-2017 |
1 |
Αρχική έκδοση. |
| 20-Ιουλ-2021 | 2 |
Ενημερώθηκε Ενότητα 2.3.2 Φάκελος έργου και Ενότητα 3.2 Απαιτήσεις λογισμικού. Καταργήθηκε Ενότητα 2 Τι είναι το STM32Cube; και το αντικατέστησε από έναν σύνδεσμο στην Εισαγωγή. |
ΣΗΜΑΝΤΙΚΗ ΕΙΔΟΠΟΙΗΣΗ - ΠΑΡΑΚΑΛΩ ΔΙΑΒΑΣΤΕ ΠΡΟΣΕΚΤΙΚΑ
Η STMicroelectronics NV και οι θυγατρικές της (“ST”) διατηρούν το δικαίωμα να κάνουν αλλαγές, διορθώσεις, βελτιώσεις, τροποποιήσεις και βελτιώσεις σε προϊόντα ST ή / και σε αυτό το έγγραφο οποιαδήποτε στιγμή χωρίς προειδοποίηση. Οι αγοραστές θα πρέπει να λαμβάνουν τις πιο πρόσφατες σχετικές πληροφορίες για προϊόντα ST πριν από την παραγγελία. Τα προϊόντα ST πωλούνται σύμφωνα με τους όρους και τις προϋποθέσεις πώλησης της ST που ισχύουν κατά την επιβεβαίωση της παραγγελίας.
Οι αγοραστές είναι αποκλειστικά υπεύθυνοι για την επιλογή, την επιλογή και τη χρήση προϊόντων ST και η ST δεν αναλαμβάνει καμία ευθύνη για βοήθεια στην εφαρμογή ή για το σχεδιασμό των προϊόντων των αγοραστών.
Καμία άδεια, ρητή ή σιωπηρή, για οποιοδήποτε δικαίωμα πνευματικής ιδιοκτησίας δεν χορηγείται από την ST στο παρόν.
Μεταπώληση προϊόντων ST με διατάξεις διαφορετικές από τις πληροφορίες που ορίζονται στο παρόν ακυρώνει κάθε εγγύηση που παρέχεται από την ST για τέτοιο προϊόν.
Το ST και το λογότυπο ST είναι εμπορικά σήματα της ST. Για πρόσθετες πληροφορίες σχετικά με τα εμπορικά σήματα ST, ανατρέξτε στο www.st.com/trademarks. Όλα τα άλλα προϊόντα ή υπηρεσίες
τα ονόματα είναι ιδιοκτησία των αντίστοιχων ιδιοκτητών τους.
Οι πληροφορίες σε αυτό το έγγραφο αντικαθιστούν και αντικαθιστούν τις πληροφορίες που είχαν παρασχεθεί προηγουμένως σε τυχόν προηγούμενες εκδόσεις αυτού του εγγράφου.
© 2021 STMicroelectronics – Με την επιφύλαξη παντός δικαιώματος
Έγγραφα / Πόροι
![]() |
Επέκταση λογισμικού προγράμματος οδήγησης ST UM2300 X-CUBE-SPN14 Stepper Motor για STM32Cube [pdf] Εγχειρίδιο χρήστη Επέκταση λογισμικού UM2300, X-CUBE-SPN14 Stepper Motor Driver για STM32Cube, UM2300 X-CUBE-SPN14 Stepper Motor Driver Software Expansion για STM32Cube, X-CUBE-SPN14 Stepper Motor Driver Software Expansion, Driver Software Expansion για STM32 Driver για STM32Cube, Επέκταση για STM32Cube, STM32Cube |




