Pan-Tilt jednotka se skládá vždy ze dvou pohonů AI-701 firmy Megarobotics. Pohon AI-701 tvoří servo, které je řízeno příkazy prostřednictvím sběrnice RS-232. Samotné servo přímo interpretuje příkazy. Mezi PC a pohonem není prostředníkem žádná řídící jednotka.
V případě PT jednotky jsou na jedné sběrnici RS-232 počítače připojeny vždy dva pohony. Příjemce řídícího příkazu je v něm identifikován identifikačním číslem (ID). V tomto případě byly pohony nastaveny tak, aby pohon pro otačení v azimutu (vodorovně) měl ID == 0 a pohon pro elevaci (svisle) měl ID == 1. Neprovádějte změny ID – můžete tak snadno způsobit nefunkčnost zařízení. Ze stejných důvodů je také zakázáno měnit komunikační rychlost sériového rozhraní (Baudrate).
Pan-Tilt jednotku lze z MATLAbu ovládat pomocí Serial Port I/O.
ser = serial('COM1');
set(ser,'BaudRate',57600);
fopen(ser);
ser pomocí příkazu fwrite.
ptmove:ptmove(ser, pan_pos, tilt_pos);kde
pan_pos udává absolutní úhel otočení kolem svislé osy, tilt_pos potom absolutní úhel otočení kolem vodorovné osy. Rozsah hodnot pro pan_pos i tilt_pos je 0 až 254, pokrývající cca 80 úhlových stupnů v daném směru. Pro nastavení jednotky do základní polohy, tedy do polohy, kdy optická osa kamery je kolmá na plochu LCD obrazovky, použijte hodnoty pan_pos==127, tilt_pos==127.function ptmove(ser, pan_pos, tilt_pos, speed)
    if nargin<4
        speed = 3;
    end
    sermove(ser, speed, 0, pan_pos);
    sermove(ser, speed, 1, tilt_pos);
end
function sermove(ser, speed, pantilt, pos)
    b1 = uint8(hex2dec('ff'));
    b2 = uint8(bitshift(uint8(speed), 5) + uint8(pantilt));
    b3 = min(max(uint8(pos), uint8(0)), uint8(254));
    b4 = uint8(bitand(bitxor(b2, b3), uint8(hex2dec('7f'))));
    fwrite(ser, [b1 b2 b3 b4]);
end
fclose(ser); delete(ser);