This project uses .NET MAUI and Evergine to control a 5-axis robotic arm. It was developed with the goal of exploring the integration between these two technologies, leveraging the cross-platform user interface capabilities of .NET MAUI and the powerful 3D rendering of Evergine. The project not only demonstrates the control of a robotic arm but also serves as a case study on how to combine a modern UI development platform with a robust graphics engine for interactive simulations and visualizations.
The robotic arm can be moved along its independent axes, allowing precise control of each segment. Additionally, a basic inverse kinematics model is implemented to assist with positioning the arm, though this model is still a work in progress and requires further improvement.
We encountered issues with collision detection in Evergine. Currently, the collision detection feature is not functioning as expected.
private bool DetectCollision()
{
/* I couldn't get collisions to work correctly (ಥ_ಥ)
* Two problems occurring:
* False start collision
* End Collision is not called sometimes
* I must be missing something ¯\_(ツ)_/¯
*/
foreach (var axis in DictEntities)
if (axis.Value.IsColliding()) return true;
return false;
}
- .NET 6.0 or higher
- Visual Studio 2022 with MAUI support
- Clone the repository:
git clone https://github.com/Junior-Oliveira-BR/RoboticArm.MAUI.git cd RoboticArm.MAUI
- Open the project in Visual Studio 2022.
- Restore the dependencies:
dotnet restore
- Build and run the project.
We welcome contributions to the project! If you would like to contribute, you can refer to the GitHub documentation on how to do so.
Thank you for your contributions!
- Email: [email protected]
- GitHub: Junior-Oliveira-BR
- LinkedIn: José Donizete Oliveira Júnior