Robotic Arm Specification

Technical Manual — Rev 1.0 — 1993


   +=============================================================+
   |                                                             |
   |            R O B O T I C   A R M                            |
   |            S P E C I F I C A T I O N                        |
   |                                                             |
   |          TECHNICAL MANUAL - REV 1.0  -  1993                |
   |                                                             |
   +=============================================================+

Table of Contents

1.System Architecture Overview
2.System Plumbing Diagram
3.Hardware Specifications
4.Software Layers

1. System Architecture Overview

The robotic arm integrates speech recognition, computer vision, a large language model, and real-time servo control into a single coordinated pipeline running on a Raspberry Pi Zero 2W. Voice commands are captured via smallest.ai’s Pulse STT and camera frames are streamed through OpenCV, both feeding into GPT-4o which issues structured JSON commands. A Python orchestrator dispatches these commands to a custom Inverse Kinematics engine that maps 3D coordinates to joint angles, which are then executed through a PCA9685 PWM driver connected to MG996R and SG90 servos.

Brain: GPT-4o via OpenAI API
STT: smallest.ai Pulse (live audio)
Vision: USB webcam -> OpenCV -> Base64 -> GPT-4o
Orchestrator: Python script on Pi Zero 2W
Kinematics: Custom Python IK (trig/geometry)
Execution: I2C -> PCA9685 -> duty cycles -> servos
Power: External 5V 5A DC (common ground)

2. System Plumbing Diagram

End-to-end data flow from user input through AI processing to physical servo motion:

  +---------------------------+     +---------------------------+
  |   smallest.ai STT         |     |   USB Camera + OpenCV    |
  |   (voice commands)        |     |   (base64 frame capture) |
  +------------+--------------+     +------------+--------------+
               |                                |
               |                                |
               v                                v
  +------------------------------------------------------------+
  |                    GPT-4o (Brain)                           |
  |         "pick up the orange"  ->  JSON commands            |
  +----------------------------+-------------------------------+
                               |
                               v
  +------------------------------------------------------------+
  |          Python Orchestrator (Raspberry Pi Zero 2W)         |
  |              Parse -> Validate -> Dispatch                  |
  +----------------------------+-------------------------------+
                               |
                          (x,y,z)
                               |
                               v
  +------------------------------------------------------------+
  |          Inverse Kinematics Engine                          |
  |          trig/geometry -> theta_1,2,3,claw                  |
  +----------------------------+-------------------------------+
                               |
                         I2C duty cycles
                               |
                               v
  +------------------------------------------------------------+
  |       PCA9685 PWM Driver Board                              |
  |       Channel 0-3 -> 50 Hz servo pulses                    |
  +----------------------------+-------------------------------+
                               |
                               v
  +------------------------------------------------------------+
  |   MG996R (BASE)     MG996R (SHOULDER)  MG996R (ELBOW)      |
  |   SG90 (CLAW)       5V 5A PSU  (common ground with Pi)     |
  +------------------------------------------------------------+

3. Hardware Specifications

The bill of materials for the robotic arm system:

ComponentDescriptionQty
Raspberry Pi Zero 2WRuns Python orchestrator, IK solver, I2C to PCA96851
PCA9685 PWM DriverI2C interface, 16 channels, 50 Hz PWM output1
MG996R ServoShoulder, elbow, base joints. 4.8-7.2V, 10 kg-cm torque3
SG90 / MG90S ServoClaw end effector. 4.8V, 1.8 kg-cm torque1
5V 5A DC Power SupplyExternal supply, common ground with Pi1
USB WebcamVision input, captured via OpenCV, Base64 encoded1
USB MicrophoneVoice command input for smallest.ai STT1
Arm Chassis Kit3D-printed or aluminum structural frame1

4. Software Layers

4.1 Python Orchestrator

The orchestrator runs on the Raspberry Pi, receives text from smallest.ai STT and Base64-encoded frames from OpenCV, sends them to GPT-4o, parses the returned JSON command array, validates each command, and dispatches target (x, y, z) coordinates to the IK solver.

4.2 Inverse Kinematics Engine

Custom Python IK solver using trigonometric geometry:

Joint Space:
  theta_1 = Base rotation (yaw)        - MG996R @ CH 0
  theta_2 = Shoulder elevation (pitch) - MG996R @ CH 1
  theta_3 = Elbow flexion (pitch)      - MG996R @ CH 2
  claw    = Gripper open/close         - SG90   @ CH 3

Pipeline:
  1. Receive (x, y, z) target
  2. theta_1 = atan2(y, x)
  3. r = sqrt(x^2 + y^2)  (sagittal projection)
  4. Solve 2-link IK via cosine law (shoulder + elbow)
  5. Return [theta_1, theta_2, theta_3, claw]

4.3 JSON Command Protocol

GPT-4o issues structured JSON. All coordinates in millimeters, angles in degrees.

{
  "commands": [
    { "action": "move", "x": 10, "y": 15, "z": 5 },
    { "action": "grab" }
  ]
}

Available Actions:

ActionParamsDescription
movex, y, zAbsolute position move
move_reldx, dy, dzRelative offset move
grabnoneClose claw servo
releasenoneOpen claw servo
rotate_baseangleAbsolute base rotation (deg)
homenoneAll joints to home position
stopnoneEmergency halt all servos

4.4 Data Flow Diagram

End-to-end signal routing:

[USER VOICE]                     [CAMERA]
     |                               |
     v                               v
[smallest.ai STT]            [OpenCV capture]
     |                               |
     |                    Base64 encode frame
     |                               |
     +-------> [GPT-4o API] <--------+
                    |
            JSON command array
                    |
                    v
          [Python Orchestrator]
                    |
           Parse & validate JSON
                    |
                    v
            [IK Solver Engine]
            trig/geometry ----
                    |
        [theta_1, theta_2, theta_3, claw]
                    |
                    v
           [PCA9685 PWM Driver]
           I2C duty cycles ----
                    |
                    v
           [MG996R / SG90 Servos]
           Physical arm motion

End of Document — Rev 1.0

This document contains proprietary system architecture details. Do not distribute outside the Advanced Robotics Lab.