# Two-Link Manipulator: 2DOF ABB IRB 910SC (SCARA)
## Requirements:
**Programming Language:**
```bash
Python
```
**Import Libraries:**
```bash
Manipulator Control: Matplotlib, NumPy
Dynamics: Matplotlib, NumPy, SciPy
```
## Project Description:
The project is focused on the Demonstration of simple control of a two-link robotic arm (2 degrees of freedom) implemented in Python using animation. The main parameters of the robot (length of arms, working range, etc.) are from the ABB IRB 910SC robot (SCARA), but only for 2-DOF control.
The main idea of the project is adaptability to future automation technologies in various fields and improving literacy (understanding kinematics, dynamics, motion planning, etc., in the field of robotics). The project was created to improve the [VRM (Programming for Robots and Manipulators)](https://github.com/rparak/Programming-for-robots-and-manipulators-VRM) university course.
Main functions of the robotic arm (2-DOF):
- Inverse / Forward kinematics, Differential Kinematics (Jacobian)
- Creation of a working envelope (Points, Line)
- Motion planning using Joint / Cartesian interpolation
- Trajectory smoothing using Bézier curves
- Animation of the resulting trajectory
- Check of reachable points, etc.
The project was realized at the Institute of Automation and Computer Science, Brno University of Technology, Faculty of Mechanical Engineering (NETME Centre - Cybernetics and Robotics Division).
<p align="center">
<img src=https://github.com/rparak/2-Link_Manipulator/blob/main/images/2.png width="700" height="500">
</p>
## Project Hierarchy:
**Repositary [/2-Link_Manipulator/]:**
```bash
[ A simple example of implementing euler-lagrange dynamics ] /Script/Dynamics/
[ Main Script (Test) + Manipulator Control Class ] /Script/Manipulator/
[ IRB 910SC Product Specification ] /Product_specification/
```
## Application:
**Work Envelop:**
<p align="center">
<img src=https://github.com/rparak/2-Link_Manipulator/blob/main/images/8.png width="400" height="325">
<img src=https://github.com/rparak/2-Link_Manipulator/blob/main/images/9.png width="400" height="325">
</p>
**Linear and Joint Interpolation:**
<p align="center">
<img src=https://github.com/rparak/2-Link_Manipulator/blob/main/images/10.png width="400" height="325">
<img src=https://github.com/rparak/2-Link_Manipulator/blob/main/images/11.png width="400" height="325">
</p>
**Trajectory problem detection (some points not reachable):**
<p align="center">
<img src=https://github.com/rparak/2-Link_Manipulator/blob/main/images/6.png width="400" height="325">
<img src=https://github.com/rparak/2-Link_Manipulator/blob/main/images/7.png width="400" height="325">
</p>
**Trajectory Generation (Circle, Rectangle):**
<p align="center">
<img src=https://github.com/rparak/2-Link_Manipulator/blob/main/images/4.png width="400" height="325">
<img src=https://github.com/rparak/2-Link_Manipulator/blob/main/images/5.png width="400" height="325">
</p>
**Trajectory smoothing using Bézier curves:**
<p align="center">
<img src=https://github.com/rparak/2-Link_Manipulator/blob/main/images/1.png width="400" height="325">
<img src=https://github.com/rparak/2-Link_Manipulator/blob/main/images/3.png width="400" height="325">
</p>
## Result:
<p align="center">
<img src=https://github.com/rparak/2-Link_Manipulator/blob/main/GIF/Default_3.gif width="800" height="500">
<img src=https://github.com/rparak/2-Link_Manipulator/blob/main/GIF/Default_3_Smooth.gif width="800" height="500">
</p>
<p align="center">
<img src=https://github.com/rparak/2-Link_Manipulator/blob/main/GIF/Default_4.gif width="800" height="500">
<img src=https://github.com/rparak/2-Link_Manipulator/blob/main/GIF/Default_4_Smooth.gif width="800" height="500">
</p>
<p align="center">
<img src=https://github.com/rparak/2-Link_Manipulator/blob/main/GIF/Circle.gif width="800" height="500">
<img src=https://github.com/rparak/2-Link_Manipulator/blob/main/GIF/Rectangle.gif width="800" height="500">
</p>
## Contact Info:
Roman.Parak@outlook.com
## Citation (BibTex)
```bash
@misc{RomanParak_2LArm,
author = {Roman Parak},
title = {Simple control of a two-link robotic arm implemented in Python},
year = {2021},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/rparak/Bioloid-Dynamixel-AX12A}}
}
```
## License
[MIT](https://choosealicense.com/licenses/mit/)
matlab资源 使用动画演示在Python中实现的双连杆机械臂(2自由度)的简单控制 仅供学习参考用代码.zip
版权申诉
87 浏览量
2023-10-18
23:30:33
上传
评论
收藏 68.41MB ZIP 举报
matlab@com
- 粉丝: 259
- 资源: 1910
最新资源
- 变压器变比组别测试仪参数
- yes I can.mp3
- 水果商城前端项目(HTML+CSS)
- 解忧云SMS短信服务平台系统 短信发送系统 全解密完美版.zip
- 天迹云通信短信分销系统源码.rar
- Screenshot_20240515_190514_net.csdn.csdnplus.jpg
- Win11右键设置小工具(最新版)
- FT-Prog-v3.12.38.643-FTD USB 工作模式设定及eprom读写
- MNIST手写数字数据集(原始数据+解析后7000张图片)
- cudart64-100.dll cudart64-101.dll cudart64-110.dll cusolver64-10
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈