manus
20.06.2009, 13:10
Ich habe mir rn schrittmotor zugelegt und es funktioniert alles soweit.
Jetzt wollte ich es mit einem anderen Programm ansteuern (david-laserscanner) und es geht nicht.
Ich vermute es liegt an der Art wie die Daten gesendet werden.
Ich habe den printbefehl in die entsprechende Zeile geschrieben und nichts ist passiert.
Gibt es eine Möglichkeit irgendwie mit diesem Programm meinen Schrittmotor zum drehen zu bekommen?
hier ist der ausschnitt aus der Wikki von David-laserscanner wie die Daten gesendet werden.
Danke Manus
DAVID will send short messages (as text - string or single character) in certain situations. You can define what to send in the Advanced Settings under Communication→COM→Messages.
*
Close: The string defined here will be sent when DAVID is closed.
*
ModeCalib: Will be sent when you navigate to the Calibration dialog.
*
ModeScan: Will be sent when you navigate to the Scan dialog and choose the upper “Show camera image” toggle.
*
ModeTexture: Will be sent when you prepare to grab a texture (choose the lower “Show camera image” toggle.
*
Open: Will be sent when DAVID is started.
*
StartScanning: Will be sent when you click “Start”, directly after the Reference Image has been grabbed, immediately before scanning starts.
*
StopScanning: Will be sent when you click “Stop”.
*
ScanSaved: Will be sent after you have saved the scan to a file or forwarded it to ShapeFusion (as an indicator that this scan is completed and a new scan will begin).
*
and more, see the descriptions in the Advanced Settings.
You can set the value Newline if you want DAVID to append a certain character to each message (e.g. Byte value 10 for Line Feedback, 13 for Carriage Return, etc., see any ASCII table). Please note: This setting is different from the above “Message” settings. When you enter “13” here, DAVID will append a single byte (value 13). When you enter “13” in one of the Message settings above, DAVID will send two bytes: “1” (ASCII code 49) and “3” (ASCII code 51). Additionally you can include a “\r” in the Message strings; each \r will be replaced by the newline character.
As a simple alternative, you can use the DTR pin as a boolean output. If you set UseDtrDuringScan to 1, DAVID will set the pin high when scanning starts and low on stop. If you set the value to 2, DAVID will send a rect signal synchronized to image grabbing and analysis. You can e.g. make a step with your laser motor each time the signal goes up. Please note that the moment the pin goes low is when DAVID grabs the latest image, not when the camera sensor is actually exposed. To synchronize laser steps and camera images, you may want to set a delay in Laserscanner→MinDelayBetweenFrames and set Laserscanner→LaserPlaneCalculation→LaserMotionEsti mation→MotionBase to 2.
Jetzt wollte ich es mit einem anderen Programm ansteuern (david-laserscanner) und es geht nicht.
Ich vermute es liegt an der Art wie die Daten gesendet werden.
Ich habe den printbefehl in die entsprechende Zeile geschrieben und nichts ist passiert.
Gibt es eine Möglichkeit irgendwie mit diesem Programm meinen Schrittmotor zum drehen zu bekommen?
hier ist der ausschnitt aus der Wikki von David-laserscanner wie die Daten gesendet werden.
Danke Manus
DAVID will send short messages (as text - string or single character) in certain situations. You can define what to send in the Advanced Settings under Communication→COM→Messages.
*
Close: The string defined here will be sent when DAVID is closed.
*
ModeCalib: Will be sent when you navigate to the Calibration dialog.
*
ModeScan: Will be sent when you navigate to the Scan dialog and choose the upper “Show camera image” toggle.
*
ModeTexture: Will be sent when you prepare to grab a texture (choose the lower “Show camera image” toggle.
*
Open: Will be sent when DAVID is started.
*
StartScanning: Will be sent when you click “Start”, directly after the Reference Image has been grabbed, immediately before scanning starts.
*
StopScanning: Will be sent when you click “Stop”.
*
ScanSaved: Will be sent after you have saved the scan to a file or forwarded it to ShapeFusion (as an indicator that this scan is completed and a new scan will begin).
*
and more, see the descriptions in the Advanced Settings.
You can set the value Newline if you want DAVID to append a certain character to each message (e.g. Byte value 10 for Line Feedback, 13 for Carriage Return, etc., see any ASCII table). Please note: This setting is different from the above “Message” settings. When you enter “13” here, DAVID will append a single byte (value 13). When you enter “13” in one of the Message settings above, DAVID will send two bytes: “1” (ASCII code 49) and “3” (ASCII code 51). Additionally you can include a “\r” in the Message strings; each \r will be replaced by the newline character.
As a simple alternative, you can use the DTR pin as a boolean output. If you set UseDtrDuringScan to 1, DAVID will set the pin high when scanning starts and low on stop. If you set the value to 2, DAVID will send a rect signal synchronized to image grabbing and analysis. You can e.g. make a step with your laser motor each time the signal goes up. Please note that the moment the pin goes low is when DAVID grabs the latest image, not when the camera sensor is actually exposed. To synchronize laser steps and camera images, you may want to set a delay in Laserscanner→MinDelayBetweenFrames and set Laserscanner→LaserPlaneCalculation→LaserMotionEsti mation→MotionBase to 2.