Dvoukanálový kontrolér krokových motorů

Loading...
Thumbnail Image
Date
Authors
Hýbl, Matouš
ORCID
Mark
A
Journal Title
Journal ISSN
Volume Title
Publisher
Vysoké učení technické v Brně. Fakulta elektrotechniky a komunikačních technologií
Abstract
Cílem této práce je vývoj dvoukanálového kontroléru krokových motorů. V rámci práce je popsán jak vývoj elektroniky, tak vývoj příslušného software. Elektronika kontrolŕu je založena na mikrokontroléru STM32F405 a driverů krokových motorů vyráběných firmou Trinamic. Pro komunikaci s nadřazenými systémy je implementován protokol CANOpen a sběrnice I\textsuperscript{2}C a USB. Elektronika byla navržena v software KiCAD and využívá čtyřvrstvého plošného spoje a moderních výrobních technologií. Co se týká software, byl vyvinut jak firmware pro mikrokontrolér, tak software pro ovládání kontroléru. Obě části software využívají programovacího jazyka Rust, který se zaměřuje na bezpečnost práce s pamětí, rychlost a zero-cost abstrakce. Sekundárním cílem této práce je ukázat, jak lze tento programovací jazyk s výhodou použít pro programování nízkoúrovňového embedded software. Firmware kontroléru implementuje nezávislé řízení pohybu obou os kontroléru a to jak v rychlostním, tak v pozičním režimu a zároveň implementuje bezpečnostní funkce pro případy selhání komunikace. Výsledný kontrolér by měl být použit v rámcí výzkumné skupiny Robotiky a Umělé Inteligence a studenty na Ústavu Automatizace FEKT VUT.
The goal of this thesis is the development of a dual-channel stepper motor controller. Both the development of electronics and software is described. The electronics of the controller is based on the STM32F405 microcontroller, and Trinamic manufactured stepper motor controller ICs. For communication with higher-level systems, the controller utilizes the CANOpen protocol, I\textsuperscript{2}C, and USB buses. The whole electronics was designed in the KiCAD EDA and utilizes a 4-layer PCB and contemporary manufacturing technologies. As for the software, both firmware and control software were developed. Both of these pieces of software utilize the Rust programming language, which focuses on memory safety, performance and provides useful zero-cost abstraction. The Secondary goal of this thesis is to show how the language can be utilized for low-level embedded software development. The firmware of the controller implements independent motion control for each of the axes with both velocity and position control and provides failsafe mechanisms for cases of communication failures. The controller is meant to be used by the Robotics and AI research group and by students of the DCI, FEEC BUT.
Description
Citation
HÝBL, M. Dvoukanálový kontrolér krokových motorů [online]. Brno: Vysoké učení technické v Brně. Fakulta elektrotechniky a komunikačních technologií. 2021.
Document type
Document version
Date of access to the full text
Language of document
en
Study field
bez specializace
Comittee
prof. Ing. Luděk Žalud, Ph.D. (předseda) doc. Ing. Petr Beneš, Ph.D. (místopředseda) Ing. František Burian, Ph.D. (člen) Ing. Martin Čala, Ph.D. (člen) doc. Ing. Václav Kaczmarczyk, Ph.D. (člen) Ing. Libor Veselý, Ph.D. (člen)
Date of acceptance
2021-06-08
Defence
Student obhájil diplomovou práci. Komise neměla žádné námitky k řešené práci. V průběhu odborné rozpravy odpověděl na dotazy.
Result of defence
práce byla úspěšně obhájena
Document licence
Standardní licenční smlouva - přístup k plnému textu bez omezení
DOI
Collections
Citace PRO