I am using NI Measurement and Automation Explorer (MAX) to control an NI PXI 7340 motion controller to a NI UMI 7764 to a 24VDC servo motor. When I configured the axis I was using in MAX then went to the calibration menu to tune my servo motor, I got an error message:
The NI motion controller is in power up reset state. Please execute Clear Power Up Status function or VI before sending any commands to the controller.
I've done some looked at all my manuals and done some searching and haven't found any information on a Clear Power Up Status Function and have been unable to configure my motor. Any information on how I could clear this status and tune my motor would be greatly appreciated.
The power up reset flag is a security feature. This flag is set when the host PC is turned on or if the reset function was executed. As long as this flag is set, the board is not working and all axes are disabled. This helps to prevent damage or hazardous situations (e. g. starting a move with a strong servo motor and wrong PID parameters). The initialize function resets the flag, but there is also an API function (Clear Power Up Reset) to do that for the case that the initialization parameters are sent without using MAX.
P. S.: A reset of the board is required in very rare cases only (E. g. after the Shutdown input was asserted).
In LabVIEW there seems to be the VI 'Reset Motion Controller' to do this.
It looks like there is no equivalent function for use in LabWin/CVI ?!
This VI just calls nimcResetController() in the nimotion.dll
Here ir is the function prototype:
int32_t nimcResetController(int32_t boardID)
I hope that helps,
If I include this function prototype and add a call, I get a link error 'Undefined Symbol ...'
Looks like there is another library to include (NI-Motion does not define this symbol).
Which one and where to add in the project? I'm very familiar to LabVIEW, but it is the first project in LabWin/CVI and I have to do extensions in a customers project of about 1.1 MBytes of .C and .H sources!
Thanks for your quick reply
I had a look at the NI-Motion Function help. nimcResetController is documented like this:
status = nimcResetController(TnimcDeviceHandle deviceHandle);
Resets the motion controller to the power-up state.
|deviceHandle||TnimcDeviceHandle||assigned by Measurement & Automation Explorer (MAX)|
Please make sure, that you are using NI-Motion 8.2 or later. In earlier versions nimcResetController() was not officially supported, so the function prototype was not part of the header file, which could result in the linker error, that you have mentioned.
I'll be out of office until April, 18th. If you can't resolve the issue, please contact your local NI branch for support.
I'm currentlly have NI-Motion 188.8.131.5204 (according to MAX).
I found the function in the 'NI-Motion C reference help' and 'NI Motion LabWindows -CVI Reference help', but not in the NI Motion Help. None of these resources show which headers to include.
There is a header nimotion.h, but including this (#include <nimotion.h>) results to 'file not found' error. Including the file by absolute path results to 'file not found' for various other headers it uses.
Using a simulated motion device (I currently have no access to the hardware) I had not been able to identify the device handle assigned by MAX. Maybe this entry is displayed for a real device only. In any case it is bad if the user has to consider about board ID and device handle to access one physical device in different ways within a single application.
I have already started an Support request, hopefully getting further this way.
Thanks for your replies!
I'm writing a driver for PCI7358. I want to reset my control card like nimcResetController do.
But I couldn't find a function or functions in DDK document corresponds nimcResetController.
How could I reset my controller with DDK functions.
I'm using NI-Motion Hardware Driver Developer's Kit (DDK) Function Reference (February 2004 Edition, Part Number 371056A-01)
I'm sorry but I'm currently too busy to spend time on investigating your question. Please post this question to a new thread in this forum. This will significantly raise the visibilty of your request for other motion control experts in this forum.