Using a Smart Motor with Matlab
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
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
0 Kommentare
Antworten (1)
Daniel
am 10 Apr. 2014
Bearbeitet: Daniel
am 10 Apr. 2014
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
0 Kommentare
Communitys
Weitere Antworten in Power Electronics Control
Siehe auch
Kategorien
Mehr zu Use COM Objects in MATLAB finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!