Softwarově definovaný osciloskop s mikrořadičem STM32F103
Software defined oscilloscope based on STM32F103
Type of document
diplomová prácemaster thesis
Author
Jakub Pařez
Supervisor
Fischer Jan
Opponent
Hladík Jiří
Field of study
Kybernetika a robotikaStudy program
Kybernetika a robotikaInstitutions assigning rank
katedra měřeníRights
A university thesis is a work protected by the Copyright Act. Extracts, copies and transcripts of the thesis are allowed for personal use only and at one?s own expense. The use of thesis should be in compliance with the Copyright Act http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf and the citation ethics http://knihovny.cvut.cz/vychova/vskp.htmlVysokoškolská závěrečná práce je dílo chráněné autorským zákonem. Je možné pořizovat z něj na své náklady a pro svoji osobní potřebu výpisy, opisy a rozmnoženiny. Jeho využití musí být v souladu s autorským zákonem http://www.mkcr.cz/assets/autorske-pravo/01-3982006.pdf a citační etikou http://knihovny.cvut.cz/vychova/vskp.html
Metadata
Show full item recordAbstract
Diplomová práce se zabývá návrhem a realizací softwarově definovaného osciloskopu, který má být cílen na hromadnou distanční výuku praktické elektroniky. Jako srdce osciloskopu byly zvoleny mikrořadiče STM32. Firmware byl vyvinut v jazyce C univerzálním způsobem, proto uživatel není omezen při výběru hardware. Uživatel může volit mezi řadiči STM32F103C8, STM32F103RE, STM32F303RE nebo STM32L412, kdy většina z nich je dostupná ve vývojové sadě Nucleo nebo BluePill. Veškeré funkce jsou realizovány pomocí interních bloků mikrořadiče. Data se do klientské aplikace v PC zasílají standardním SCPI protokolem. Připojení je volitelné mezí USB nebo UART, záleží na konkrétním typu hardware. Aplikace byla vytvořena v Qt frameworku pro operační systémy Windows, Linux a macOS. Při vývoji a realizace funkcí osciloskopu byl kladen důraz především na tři body. Prvním je stabilita, implikovaná dodržením správných postupů softwarového inženýrství, jako jsou fáze vývoje, UML digramy, standardy a testování. Druhým je uživatelská vstřícnost, vycházející z vlastního grafického návrhu PC aplikace, dokumentovaného kódu a implementace textového komunikačního protokolu. Třetím je funkčnost, zajištěna inspirací z komerčních produktů a spektrem hardwaru a systémů, ze kterých může uživatel vybírat. Kromě osciloskopu byl realizován také logický analyzátor a voltmetr. Tato trojice instrumentů je exkluzivního charakteru a představuje primární scénář použití. Dále byl realizován čítač, PWM generátor a signálový generátor. Tyto tři doplňkové přístroje jsou na ostatních nezávislé. Parametry, jako maximální hodnoty a režimy podléhají konkrétnímu typu mikrořadiče, signálový generátor je pak přítomen pouze u řadičů s DAC převodníkem, jako je například STM32F303RE. Osciloskop dostal jméno EMBO a veškeré jeho zdrojové kódy jsou zveřejněny. The diploma thesis deals with the design and implementation of a software-defined oscilloscope, which should be aimed at mass distance learning of practical electronics. STM32 microcontrollers were chosen as the heart of the oscilloscope. Firmware was developed in the C language in a universal way, so the user is not limited in choosing hardware. User can choosen between STM32F103C8, STM32F103RE, STM32F303RE or STM32L412, most of which are available in the Nucleo or BluePill development kit. All functions are implemented using internal microcontroller blocks. The data is sent to the client application on the PC using the standard SCPI protocol. The connection is selectable between USB or UART and depends on the specific type of hardware. The application was created in the Qt framework for Windows, Linux and macOS operating systems. During the development and implementation of the oscilloscope functions, emphasis was placed on three points. The first is stability, implied by following good software engineering practices, such as development phases, UML diagrams, standards, and testing. The second is user-friendliness, based on the own graphic design of the PC application, documented code and the implementation of a text communication protocol. The third is functionality, provided by inspiration from commercial products and a range of hardware and systems from which the user can choose. In addition to the oscilloscope, a logic analyzer and voltmeter were also implemented. These three instruments are exclusive and represents the primary scenario of use. Furthermore, a counter, PWM generator and signal generator were implemented. These three secondary devices are independent of each others. Parameters, such as maximum values and modes, depend on the specific type of microcontroller, the signal generator is available only for controllers with a DAC converter, such as STM32F303RE. The oscilloscope was named EMBO and is completely open-sourced.
Collections
- Diplomové práce - 13138 [376]