{"id":23127666,"url":"https://github.com/hlfshell/rbe500","last_synced_at":"2025-04-04T05:43:04.029Z","repository":{"id":146170708,"uuid":"345184814","full_name":"hlfshell/RBE500","owner":"hlfshell","description":"WPI RBE 500 2021","archived":false,"fork":false,"pushed_at":"2022-05-07T19:50:37.000Z","size":55144,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-02-09T17:14:49.528Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"MATLAB","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hlfshell.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2021-03-06T20:06:57.000Z","updated_at":"2025-01-01T20:29:43.000Z","dependencies_parsed_at":null,"dependency_job_id":"21e2681b-8368-4c5a-a47f-8cd13de2dbcc","html_url":"https://github.com/hlfshell/RBE500","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/hlfshell%2FRBE500","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hlfshell%2FRBE500/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hlfshell%2FRBE500/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hlfshell%2FRBE500/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hlfshell","download_url":"https://codeload.github.com/hlfshell/RBE500/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247128738,"owners_count":20888234,"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":[],"created_at":"2024-12-17T09:14:25.820Z","updated_at":"2025-04-04T05:43:03.993Z","avatar_url":"https://github.com/hlfshell.png","language":"MATLAB","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RBE 500\n\n\u003cimg src=\"Assignment5/rrrarm.gif\"/\u003e\n\u003cimg src=\"Assignment10/rrt.png\"\u003e\n\nThis is the code repository for my assignments and work within the WPI graduate course of RBE 500 - Foundation of Robotics. The course primarily focused on kinematics with a significant focus on robotic arms. These assignments were mandated to be done as MATLAB LiveScripts (`mlx`) and written as academic papers. Since the `mlx` format is binary and not easy readable, I have PDF exports of each assignment (though it lacks the interactive and animated elements as a result). I tried to capture some GIFs of the work in action as well.\n\nAll visualizations were hand coded, though the [gif](https://www.mathworks.com/matlabcentral/fileexchange/63239-gif) function was utilized to create the gif outputs.\n\n## Assignment 1\n\nAssignment 1 was merely an introduction to MATLAB and a warm-up assignment.\n\n## Assignment 2\n\nAssignment 2 was an introduction to rotation and transformation frames utilizing a Denso HSR arm (a popular pick and place RRR arm).\n\n## Assignment 3\n\nA deeper dive into transforms and frames, as well as an exploration of applying it to various robotic arm designs.\n\n\u003cimg src=\"Assignment3/plunger_arm.jpg\" width=\"300\"/\u003e\n\n## Assignment 4\n\nIn this assignment we explore utilizing the DH Table convention to design the transform matricies for working with real robotic arms.\n\n\u003cimg src=\"Assignment4/iv-2.gif\" width=\"400\"/\u003e\n\u003cimg src=\"Assignment4/denso-480-arm.gif\"\u003e\n\u003cimg src=\"Assignment4/rpp-robot-arm.gif\"/\u003e\n\n## Assignment 5\n\nAssignment 5 introduced inverse kinematics - we explored first trigonmetry to manually create functions to determine a robot's position, and explore the effects of singularities on these methods.\n\n\u003cimg src=\"Assignment5/rrrarm.gif\"/\u003e\n\n## Assignment 6\n\nIn this assignment we explored calculating joint velocities utilizing the Jacobian.\n\n## Assignmeny 7\n\nWe utilize the Mechademic 6 axis robotic arm to further explore the Jacobian and utilize it to identify the nature, identification, and effects of singularities on robotic arms.\n\n## Assignment 9\n\nIn assignment 9 we explored configuration and task space, collision detection, and created an *interacive demonstrations* for creating obstacles for a 2 link robotic arm (RR) and demonstrated collision detection and calculating the result collision, task spaces for a given work envelope.\n\n## Assignment 10\n\nIn our final assignment, we explored the basics of path finding and explored RRT for a given floorplan.\n\n\u003cimg src=\"Assignment10/rrt.png\"\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhlfshell%2Frbe500","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhlfshell%2Frbe500","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhlfshell%2Frbe500/lists"}