From: Tim on 23 Feb 2010 17:16 I'm currently trying to do a simulation of a PUMA 560 robot in simulink. I'm trying to do it using computed torque control. Problem is that when I compile my simulation the error message I get is as follows: Warning: The model 'motormodel' does not have continuous states, hence Simulink is using the solver 'VariableStepDiscrete' instead of solver 'ode45'. You can disable this diagnostic by explicitly specifying a discrete solver in the solver tab of the Configuration Parameters dialog, or by setting the 'Automatic solver parameter selection' diagnostic to 'none' in the Diagnostics tab of the Configuration Parameters dialog. Embedded MATLAB parsing for model "motormodel"...Done Embedded MATLAB code generation for model "motormodel"........Done Embedded MATLAB compilation for model "motormodel"...Making simulation target "motormodel_sfun", ... z:\slprj\_sfprj\motormodel\_self\sfun\src>"c:\program files\matlab\r2009a student\sys\lcc\bin\lccmake" -f motormodel_sfun.lmk Warning c1_motormodel.c: 381 static `void function(void) init_io_bus_offset' is not referenced 0 errors, 1 warnings Warning c2_motormodel.c: 482 static `void function(void) init_io_bus_offset' is not referenced 0 errors, 1 warnings Warning c3_motormodel.c: 440 static `void function(void) init_io_bus_offset' is not referenced 0 errors, 1 warnings Warning c4_motormodel.c: 381 static `void function(void) init_io_bus_offset' is not referenced 0 errors, 1 warnings Warning c5_motormodel.c: 414 static `void function(void) init_io_bus_offset' is not referenced 0 errors, 1 warnings Impossible to write to executable "c:\program files\matlab\r2009a student\sys\lcc\bin\lcc.exe" -c -Zp8 -DMATLAB_MEX_FILE -noregistrylookup -I"c:\program files\matlab\r2009a student\sys\lcc\include" -I"c:\program files\matlab\r2009a student\extern\include" -I"c:\program files\matlab\r2009a student\simulink\include" -I"c:\program files\matlab\r2009a student\stateflow\c\mex\include" -I"c:\program files\matlab\r2009a student\stateflow\c\debugger\include" "motormodel_sfun.c" "c:\program files\matlab\r2009a student\sys\lcc\bin\lcc.exe" -c -Zp8 -DMATLAB_MEX_FILE -noregistrylookup -I"c:\program files\matlab\r2009a student\sys\lcc\include" -I"c:\program files\matlab\r2009a student\extern\include" -I"c:\program files\matlab\r2009a student\simulink\include" -I"c:\program files\matlab\r2009a student\stateflow\c\mex\include" -I"c:\program files\matlab\r2009a student\stateflow\c\debugger\include" "motormodel_sfun_registry.c" "c:\program files\matlab\r2009a student\sys\lcc\bin\lcc.exe" -c -Zp8 -DMATLAB_MEX_FILE -noregistrylookup -I"c:\program files\matlab\r2009a student\sys\lcc\include" -I"c:\program files\matlab\r2009a student\extern\include" -I"c:\program files\matlab\r2009a student\simulink\include" -I"c:\program files\matlab\r2009a student\stateflow\c\mex\include" -I"c:\program files\matlab\r2009a student\stateflow\c\debugger\include" "c1_motormodel.c" "c:\program files\matlab\r2009a student\sys\lcc\bin\lcc.exe" -c -Zp8 -DMATLAB_MEX_FILE -noregistrylookup -I"c:\program files\matlab\r2009a student\sys\lcc\include" -I"c:\program files\matlab\r2009a student\extern\include" -I"c:\program files\matlab\r2009a student\simulink\include" -I"c:\program files\matlab\r2009a student\stateflow\c\mex\include" -I"c:\program files\matlab\r2009a student\stateflow\c\debugger\include" "c2_motormodel.c" "c:\program files\matlab\r2009a student\sys\lcc\bin\lcc.exe" -c -Zp8 -DMATLAB_MEX_FILE -noregistrylookup -I"c:\program files\matlab\r2009a student\sys\lcc\include" -I"c:\program files\matlab\r2009a student\extern\include" -I"c:\program files\matlab\r2009a student\simulink\include" -I"c:\program files\matlab\r2009a student\stateflow\c\mex\include" -I"c:\program files\matlab\r2009a student\stateflow\c\debugger\include" "c3_motormodel.c" "c:\program files\matlab\r2009a student\sys\lcc\bin\lcc.exe" -c -Zp8 -DMATLAB_MEX_FILE -noregistrylookup -I"c:\program files\matlab\r2009a student\sys\lcc\include" -I"c:\program files\matlab\r2009a student\extern\include" -I"c:\program files\matlab\r2009a student\simulink\include" -I"c:\program files\matlab\r2009a student\stateflow\c\mex\include" -I"c:\program files\matlab\r2009a student\stateflow\c\debugger\include" "c4_motormodel.c" "c:\program files\matlab\r2009a student\sys\lcc\bin\lcc.exe" -c -Zp8 -DMATLAB_MEX_FILE -noregistrylookup -I"c:\program files\matlab\r2009a student\sys\lcc\include" -I"c:\program files\matlab\r2009a student\extern\include" -I"c:\program files\matlab\r2009a student\simulink\include" -I"c:\program files\matlab\r2009a student\stateflow\c\mex\include" -I"c:\program files\matlab\r2009a student\stateflow\c\debugger\include" "c5_motormodel.c" "c:\program files\matlab\r2009a student\sys\lcc\bin\lcc.exe" -c -Zp8 -DMATLAB_MEX_FILE -noregistrylookup -I"c:\program files\matlab\r2009a student\sys\lcc\include" -I"c:\program files\matlab\r2009a student\extern\include" -I"c:\program files\matlab\r2009a student\simulink\include" -I"c:\program files\matlab\r2009a student\stateflow\c\mex\include" -I"c:\program files\matlab\r2009a student\stateflow\c\debugger\include" "c:\program files\matlab\r2009a student\sys\lcc\mex\lccstub.c" "c:\program files\matlab\r2009a student\sys\lcc\bin\lcclnk.exe" -s -dll -L"c:\program files\matlab\r2009a student\sys\lcc\lib" -o motormodel_sfun.mexw32 @motormodel_sfun.lmko c:\program files\matlab\r2009a student\sys\lcc\bin\lccmake: Error code 1 c:\program files\matlab\r2009a student\sys\lcc\bin\lccmake: 'motormodel_sfun.mexw32' removed. I don't understand what error code 1 is or how it applies to this situation. Any help would be greatly appreciated
From: Stefan Andreevski on 23 Feb 2010 19:27 Hey Tim, SIMULINK tries to tell you that you have a discrete system on hand (as is any robot manipulator). What you should do is to enter Simultation -> Configuration Parameters in your simulation model and under the Solver Options choose Type as Fixed step. Then select Solver: discrete (no continous states) and for Fixed Step Size (dundamental sample time) select the robot's sample time or just leave it to auto. If you get an error again it mean that some blocks in your model work with different sample times (e.g. sensors work faster than actuators). Then leave Variable step size in Configuration Parameters and leave everything to auto (or set fixed minimum and maximum step sizes). Hope this explains some of your questions. Cheers, Stefan
|
Pages: 1 Prev: Efficiently updating a member of a cell array Next: Comparing Arrays of different size |