Using a Smart Motor with Matlab

I have a Smart Motor made my Animatics (www.animatics.com). They have examples of how to control it using a COM object in C++ and Visual Basic. I have tried using the actxserver function but to no avail.
The VB sample is as follows:
Sub EngineUserSub()
On Error GoTo ErrorHandler:
' Create an instance of SMIHost object
Dim CommInterface As SMIHost
Set CommInterface = New SMIHost
CommInterface.OpenPort(COM1)
n = CommInterface.AddressMotorChain
Send a command and get response
CommInterface.DefaultMotor = 1
CommInterface.WriteCommand(RSP)
Dim Response As String
Response = CommInterface.ReadResponse
MsgBox(Response)
If anyone has accomplished this or has any insight, it would be greatly appreciated.
Thank you, Ryan

Antworten (1)

Daniel
Daniel am 10 Apr. 2014
Bearbeitet: Daniel am 10 Apr. 2014

0 Stimmen

The following may be helpful:
Note: a space acts as a delimiter for commands sent to the motor
function openmoveclose(x)
%open the serial port COM1
%apply the displacement x (in steps)
%close the port
% choose the serial port COM1
s = serial('COM1');
% set all the properties of the port
s.BaudRate = 9600;
s.DataBits = 8;
s.Terminator = 'LF/CR';
s.RequestToSend = 'off';
s.FlowControl = 'software';
s.DataTerminalReady = 'off';
s.parity = 'none';
%open the port
fopen(s);
%apply displacement
%allow 5ms second for initialization => prevent 'fuzzy' dismissal of the command
%clear the board memory
%remove hardware limits, set velocity and acceleration
preamble = ['EIGN(2) EIGN(3) ZS a=0 AT=9000 VT=283032 END'];
command = ['WAIT=5' ' ' 'PT=' int2str(sign(x)*round(abs(x))) ' ' 'G'];
fprintf(s,preamble);
fprintf(s,command);
%close the port
fclose(s);
delete(s)
clear s;
end

Communitys

Weitere Antworten in  Power Electronics Control

Kategorien

Mehr zu Instrument Control Toolbox Supported Hardware finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 18 Jan. 2012

Bearbeitet:

am 10 Apr. 2014

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by