{"id":18365026,"url":"https://github.com/askuric/inverted_inertia_pendulum","last_synced_at":"2025-10-25T08:46:05.871Z","repository":{"id":119454406,"uuid":"169036315","full_name":"askuric/inverted_inertia_pendulum","owner":"askuric","description":"This is an opensource project of Inverted pendulum based on inertial wheel. The repo contains all the software needed, stl and cad files and instructions.","archived":false,"fork":false,"pushed_at":"2020-03-22T23:35:36.000Z","size":173622,"stargazers_count":24,"open_issues_count":0,"forks_count":11,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-22T03:22:34.119Z","etag":null,"topics":["control-systems","inverted-pendulum","solidworks","stl","stm32f4"],"latest_commit_sha":null,"homepage":"https://askuric.github.io/inverted_inertia_pendulum/","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/askuric.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-02-04T06:25:23.000Z","updated_at":"2024-09-30T23:32:10.000Z","dependencies_parsed_at":null,"dependency_job_id":"c2aabaf0-230b-4c04-9200-43f8c76c9b0d","html_url":"https://github.com/askuric/inverted_inertia_pendulum","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/askuric%2Finverted_inertia_pendulum","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/askuric%2Finverted_inertia_pendulum/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/askuric%2Finverted_inertia_pendulum/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/askuric%2Finverted_inertia_pendulum/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/askuric","download_url":"https://codeload.github.com/askuric/inverted_inertia_pendulum/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247512488,"owners_count":20950869,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["control-systems","inverted-pendulum","solidworks","stl","stm32f4"],"created_at":"2024-11-05T23:12:26.027Z","updated_at":"2025-10-25T08:46:05.866Z","avatar_url":"https://github.com/askuric.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Inertia Wheel Inverted Pendulum Project \n\nThis project is suitable for anyone with extra free time and passion for interesing projects, but especially for electrical engineering studets (contorl theory students) to learn the control approach of an unstable process and test their algorithms, the primary contorller used in this project is LQR.  \n\nThis project is also available on [Thingiverse](https://www.thingiverse.com/thing:3422949)\n\nThis project is based on Nucleo STM32F411RE microcontroller. And the repo contains :\n- CubeMX project \n- Keil project\n- Solidworks files and STLs\n\nYouTube link:\u003cbr\u003e\n [![IMAGE ALT TEXT HERE](https://img.youtube.com/vi/POPPNbzDYbw/0.jpg)](https://www.youtube.com/watch?v=POPPNbzDYbw)\n \nThe full gallery of the project can be found on [Link](https://photos.app.goo.gl/RDtYy89tumxfFMtH9):\n\u003cp\u003e\u003cimg src=\"./Photos/video.gif\" height=\"350px\"\u003e\n\u003cimg src=\"./Photos/pendulum1.png\" height=\"350px\"\u003e\n\u003cimg src=\"./Photos/pendulum2.png\" height=\"350px\"\u003e\n\u003cimg src=\"./Photos/top_view.png\" height=\"350px\"\u003e\n\u003cimg src=\"./Photos/front_view.png\" height=\"350px\"\u003e\n\u003cimg src=\"./Photos/side_view.png\" height=\"350px\"\u003e\n\u003cimg src=\"./Photos/exploded.png\" height=\"500px\"\u003e\u003c/p\u003e\n\n# Electronics hardware\n- Nuceleo STM32F411RE - [Mouser](https://hr.mouser.com/ProductDetail/STMicroelectronics/NUCLEO-F411RE?qs=%2fha2pyFaduj0LE%252bzmDN2WGOyc9ZJn6rAAaZxUZnl1jWj%2fTN4JYE9Mw%3d%3d) \n- Monster motor shield - [Ebay](https://www.ebay.com/itm/L298N-Dual-VNH2SP30-Stepper-Motor-Driver-Module-30A-Monster-Moto-Shield-Replace/112031018900?hash=item1a1591af94:g:R4YAAOSwEaBaTafh)\n- Motor - Mabuchi RS-385PH with encoder (hall or optical)\n  -  With encoder or hall sensors  [Ebay](https://www.ebay.com/itm/RS-385PH-16140-MABUCHI-DC-24V-Motor-for-Printer-Copy-machine/222827327725?epid=24014452613\u0026hash=item33e18b30ed:g:ulEAAOSwZFdaecSZ:rk:8:pf:0)\n  -  I used motor without sensor and retrofited it with Hall encoder 20cpr [Ebay](https://www.ebay.com/itm/Pololu-Romi-Encoder-Pair-Kit-12-CPR-3-5-18V-with-Hall-effect-sensor-3542/272789024914?epid=2157895482\u0026hash=item3f837e3092:g:MxkAAOSwu9Jb3CQt:rk:1:pf:1\u0026frcectupt=true)\n- Encoder [Aliexpress](https://www.aliexpress.com/item/360-600P-R-Photoelectric-Incremental-Rotary-Encoder-5-24V-AB-Two-Phases-Shaft/32756209569.html?spm=2114.search0104.3.38.1c0b9456Bf5oQP\u0026ws_ab_test=searchweb0_0,searchweb201602_1_10065_10068_319_10059_10884_317_10887_10696_321_322_453_10084_454_10083_10103_10618_10307_10820_10301_10821_10303_537_536_10902,searchweb201603_45,ppcSwitch_0\u0026algo_expid=3179dab4-6711-42f4-8e94-b644142c4211-5\u0026algo_pvid=3179dab4-6711-42f4-8e94-b644142c4211)\n- 1x 6mm steel or aluminum rod, 120mm long \n- 1x M10x1.5 screw \n- 2x M10x1.5 nuts\n- 10x M3 screw \n- 10x M3 Brass Knurl Nuts [Aliexpress](https://www.aliexpress.com/item/100pcs-Brass-Knurl-Nuts-M3x4mm-L-5mm-OD-Metric-Threaded-insert/1294839803.html?spm=a2g0s.9042311.0.0.1a544c4dO3MjB8)\n- 2x ball bearing, 10mm x 35mm x 11mm \n- steel/amulinum/wooden plate (cca 90mm x 2mm x300mm)\n\n# 3D printed parts\n-  Inetria wheel - (0.1mm | 50+%)\n   - Motor shaft mount has to be adapted\n   - The two provided wheel STLs are for 14tooth and 12tooth version of motors\n   - Feel free to make your own version of the inertia wheel with the solidworks file\n-  Motor mount - (0.2mm | 30%)\n-  Pole shaft connector - (0.1mm | 30%)\n-  Shaft adapter - (0.1mm | 30%)\n-  Table mount + bearing holder - (0.2mm | 30%)\n-  Nucleo mount - (0.2mm | 30%)\n\n# Control algorithm\n - PD (Simple)\n - LQR algorithm (Intermediate) - \u003cb\u003eIncluded in the software + Synthesis using Matlab scirpt\u003c/b\u003e\n - MPC (Advanced) - Suggested use of [muao MPC](http://ifatwww.et.uni-magdeburg.de/syst/muAO-MPC/)\n\n# Connecting the hardware\n - Monster motor shield is mounted on nucleo very simply, as on any Arduino\n    - It provides the hardware connections needed and no need for additional jumpers\n    - Inertia wheel motor should be connected to motor 2 terminal\n    - 18V - 5A power supply should be used to power the shield\n - Encoder connection diagram is as follows:\n \n\u003cimg src=\"./Photos/wiring.png\" height=\"300px\"\u003e\n\n# Running the code\n - Build the Keil project and download it to your Nucleo\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faskuric%2Finverted_inertia_pendulum","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faskuric%2Finverted_inertia_pendulum","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faskuric%2Finverted_inertia_pendulum/lists"}