A C# library for controlling the OWI 535 Robotic Arm via USB interface. This project provides a simple API to control all movements of the robotic arm including rotation, arm movement, elbow control, claw operations, and light control.
- Complete control of OWI 535 Robotic Arm using C# API
- Individual joint movement (claw, elbow, arm)
- Rotation control
- Gripper control (open/close)
- LED light control
- Customizable movement durations
- Demo applications (Console and WPF)
- Windows OS with .NET Framework 4.5 or later
- OWI 535 Robotic Arm
- USB port
- Install the USB driver from the
1. Driver/OWI_535_Robotic_Arm/
directory - Connect the OWI 535 Robotic Arm to your computer via USB
- Reference the
OWI535.Library.dll
in your project
.
├── 1. Driver/ # USB drivers for the robotic arm
├── 2. Library/ # C# Library source code
├── 3. DLLs/ # Compiled DLLs
└── 4. Demo Applications/ # Example applications
├── OWI535.Test.Console/ # Console application demo
└── OWI535.Test.WPF/ # WPF application with GUI controls
using OWI535.Library;
// Create a new arm controller (VendorID=4711, ProductID=0, ArmID=0)
ArmController arm = new ArmController(4711, 0, 0);
// Control the arm
arm.LightOn(); // Turn on the LED
arm.ClawOpen(1000); // Open the claw (duration: 1 second)
arm.ArmUp(2000); // Move arm up (duration: 2 seconds)
arm.RotateLeft(1500); // Rotate arm left (duration: 1.5 seconds)
arm.ClawClose(1000); // Close the claw (duration: 1 second)
arm.LightOff(); // Turn off the LED
// Predefined action
arm.Handshake(); // Perform handshake action
// Always reset and disconnect when done
arm.Disconnect();
The main class for controlling the OWI 535 Robotic Arm.
public ArmController(Int32 VendorID, Int32 ProductID, Int32 ArmID)
VendorID
: The vendor ID of the OWI 535 Robotic Arm (usually 4711)ProductID
: The product ID of the OWI 535 Robotic Arm (usually 0)ArmID
: The arm ID (0 for first arm, 1 for second, etc.)
Connections
Reset()
- Stop all arm movementsDisconnect()
- Reset and disconnect the arm
Claw Control
ClawOpen(int sleepTime)
- Open the clawClawClose(int sleepTime)
- Close the clawClawUp(int sleepTime)
- Move the claw upClawDown(int sleepTime)
- Move the claw down
Elbow Control
ElbowUp(int sleepTime)
- Move the elbow upElbowDown(int sleepTime)
- Move the elbow down
Arm Control
ArmUp(int sleepTime)
- Move the arm upArmDown(int sleepTime)
- Move the arm downRotateLeft(int sleepTime)
- Rotate the arm leftRotateRight(int sleepTime)
- Rotate the arm right
Light Control
LightOn()
- Turn the light onLightOff()
- Turn the light off
Predefined Actions
Handshake()
- Perform a handshake actionFlashEye(int times)
- Flash the light a specific number of times
- Open
2. Library/OWI535.Library/OWI535.Library.sln
in Visual Studio - Build the solution to generate the library DLL
- Reference the generated DLL in your projects
The repository includes two demo applications:
-
Console Application: Simple console-based demo of arm movements
- Open
4. Demo Applications/OWI535.Test.sln
and run the Console project
- Open
-
WPF Application: GUI-based control of the robotic arm
- Open
4. Demo Applications/OWI535.Test.sln
and run the WPF project
- Open
Contributions are welcome! Please feel free to submit a Pull Request.
Copyright (c) Alexandros Sigaras. All rights reserved.
Licensed under the MIT License.