Go to the source code of this file.
#define carmen_test_alloc | ( | X | ) | do {if ((void*)(X) == NULL) {fprintf(stderr, "Out of memory in %s, (%s:%d).\n",__FUNCTION__, __FILE__, __LINE__);abort();}}while(0) |
Definition at line 13 of file sick.c.
Referenced by sick_allocate_laser(), and sick_install_settings().
double carmen_get_time_ms | ( | void | ) |
int cBaudrate | ( | int | baudrate | ) |
Definition at line 98 of file sick.c.
Referenced by sick_set_baudrate(), and sick_set_serial_params().
int cDataSize | ( | int | numbits | ) |
int cFlowControl | ( | int | flowcontrol | ) |
int cParity | ( | parity_t | par | ) |
int cStopSize | ( | int | numbits | ) |
int iParity | ( | parity_t | par | ) |
int iSoftControl | ( | int | flowcontrol | ) |
void sick_allocate_laser | ( | sick_laser_p | laser | ) |
Definition at line 610 of file sick.c.
References sick_laser_t::buffer, sick_laser_t::buffer_position, carmen_test_alloc, sick_laser_t::glare, laser, LASER_BUFFER_SIZE, sick_laser_t::new_reading, laser_settings_t::num_values, sick_laser_t::numvalues, sick_laser_t::processed_mark, sick_laser_t::range, sick_laser_t::settings, sick_laser_t::sfv, and sick_laser_t::wfv.
Referenced by sick_connect_device().
int sick_check_baudrate | ( | sick_laser_p | laser, | |
int | brate | |||
) |
Definition at line 579 of file sick.c.
References FALSE, laser, sick_testBaudrate(), and TRUE.
Referenced by sick_start_laser().
static int sick_compute_checksum | ( | unsigned char * | CommData, | |
int | uLen | |||
) | [static] |
Definition at line 186 of file sick.c.
References CRC16_GEN_POL0, and CRC16_GEN_POL1.
Referenced by sick_parse_conf_data(), sick_valid_packet(), and sick_write_command().
int sick_connect_device | ( | sick_laser_p | laser | ) |
Definition at line 636 of file sick.c.
References laser_device_t::baudrate, laser_device_t::databits, sick_laser_t::dev, E, laser_device_t::fd, laser, N, laser_device_t::parity, sick_allocate_laser(), sick_install_settings(), sick_serial_connect(), sick_set_serial_params(), laser_device_t::stopbits, and laser_device_t::ttyport.
Referenced by sick_start_laser().
int sick_detect_baudrate | ( | sick_laser_p | laser | ) |
Definition at line 539 of file sick.c.
References laser, sick_laser_t::settings, sick_testBaudrate(), and laser_settings_t::use_highspeed.
Referenced by sick_start_laser().
void sick_handle_laser | ( | sick_laser_p | laser | ) |
Definition at line 808 of file sick.c.
References sick_laser_t::buffer, sick_laser_t::buffer_position, carmen_serial_numChars(), carmen_serial_readn(), sick_laser_t::dev, laser_device_t::fd, laser, LASER_BUFFER_SIZE, sick_laser_t::new_reading, sick_laser_t::packet_length, sick_laser_t::packet_offset, sick_laser_t::processed_mark, sick_process_packet(), and sick_valid_packet().
Referenced by main().
void sick_install_settings | ( | sick_laser_p | laser | ) |
Definition at line 593 of file sick.c.
References laser_device_t::baudrate, carmen_test_alloc, laser_settings_t::databits, laser_device_t::databits, sick_laser_t::dev, laser_settings_t::device_name, laser_device_t::fd, laser_settings_t::hwf, laser_device_t::hwf, laser, laser_settings_t::parity, laser_device_t::parity, laser_device_t::passwd, laser_settings_t::password, sick_laser_t::settings, laser_settings_t::start_baudrate, laser_settings_t::stopbits, laser_device_t::stopbits, laser_settings_t::swf, laser_device_t::swf, laser_device_t::ttyport, laser_settings_t::type, and laser_device_t::type.
Referenced by sick_connect_device().
int sick_parse_conf_data | ( | sick_laser_p | laser, | |
unsigned char * | buf, | |||
int | length | |||
) |
Definition at line 417 of file sick.c.
References CM, DM, FALSE, laser, MM, RANGE160M, RANGE320M, RANGE80M, laser_settings_t::range_dist, laser_settings_t::range_res, sick_laser_t::settings, sick_compute_checksum(), sick_set_config_mode(), and sick_set_lms_config().
Referenced by sick_set_lms_range().
static void sick_process_packet | ( | sick_laser_p | laser, | |
unsigned char * | packet | |||
) | [static] |
Definition at line 762 of file sick.c.
References carmen_get_time_ms(), sick_laser_t::glare, laser, LMS, sick_laser_t::new_reading, sick_laser_t::range, sick_laser_t::raw, sick_laser_t::settings, sick_laser_t::sfv, sick_laser_t::timestamp, laser_settings_t::type, and sick_laser_t::wfv.
Referenced by sick_handle_laser().
int sick_read_data | ( | sick_laser_p | laser, | |
unsigned char * | data, | |||
double | timeout | |||
) |
Definition at line 213 of file sick.c.
References BUFFER_SIZE, carmen_get_time_ms(), carmen_serial_numChars(), sick_laser_t::dev, FALSE, laser_device_t::fd, laser, LID, STX, TRUE, and val.
Referenced by sick_set_config_mode(), sick_set_lms_range(), and sick_testBaudrate().
int sick_request_lms_config | ( | sick_laser_p | laser | ) |
Definition at line 397 of file sick.c.
References ACK, laser, and sick_write_command().
Referenced by sick_set_lms_range().
void sick_request_sensor | ( | sick_laser_p | laser | ) |
void sick_request_status | ( | sick_laser_p | laser | ) |
int sick_serial_connect | ( | sick_laser_p | laser | ) |
Definition at line 176 of file sick.c.
References sick_laser_t::dev, laser_device_t::fd, laser, sick_set_serial_params(), and laser_device_t::ttyport.
Referenced by sick_connect_device().
void sick_set_baudrate | ( | sick_laser_p | laser, | |
int | brate | |||
) |
Definition at line 165 of file sick.c.
References cBaudrate(), sick_laser_t::dev, laser_device_t::fd, and laser.
Referenced by sick_start_laser(), and sick_testBaudrate().
int sick_set_config_mode | ( | sick_laser_p | laser | ) |
Definition at line 352 of file sick.c.
References ACK, carmen_serial_ClearInputBuffer(), sick_laser_t::dev, FALSE, laser_device_t::fd, laser, MAX_COMMAND_SIZE, MAX_TIME_FOR_CONFIG, laser_device_t::passwd, sick_read_data(), and sick_write_command().
Referenced by sick_parse_conf_data(), and sick_start_laser().
int sick_set_laser_baudrate | ( | sick_laser_p | laser, | |
int | brate | |||
) |
Definition at line 335 of file sick.c.
References ACK, laser, and sick_write_command().
Referenced by sick_start_laser().
int sick_set_lms_config | ( | sick_laser_p | laser, | |
unsigned char * | data, | |||
int | len | |||
) |
Definition at line 405 of file sick.c.
References ACK, FALSE, laser, and sick_write_command().
Referenced by sick_parse_conf_data().
int sick_set_lms_range | ( | sick_laser_p | laser | ) |
Definition at line 477 of file sick.c.
References BUFFER_SIZE, FALSE, laser, MAX_TIME_FOR_GETTING_CONF, sick_parse_conf_data(), sick_read_data(), and sick_request_lms_config().
Referenced by sick_start_laser().
int sick_set_lms_resolution | ( | sick_laser_p | laser | ) |
Definition at line 368 of file sick.c.
References ACK, laser_settings_t::angle_range, laser_settings_t::angle_resolution, laser, RES_0_50_DEGREE, RES_1_00_DEGREE, sick_laser_t::settings, and sick_write_command().
Referenced by sick_start_laser().
void sick_set_serial_params | ( | sick_laser_p | laser | ) |
Definition at line 146 of file sick.c.
References laser_device_t::baudrate, cBaudrate(), cDataSize(), cFlowControl(), cParity(), cStopSize(), laser_device_t::databits, sick_laser_t::dev, laser_device_t::fd, laser_device_t::hwf, iParity(), iSoftControl(), laser, laser_device_t::parity, laser_device_t::stopbits, and laser_device_t::swf.
Referenced by sick_connect_device(), and sick_serial_connect().
void sick_start_continuous_mode | ( | sick_laser_p | laser | ) |
Definition at line 491 of file sick.c.
References ACK, laser_settings_t::angle_resolution, laser, LMS, PLS, RES_0_50_DEGREE, RES_1_00_DEGREE, sick_laser_t::settings, sick_write_command(), and laser_settings_t::type.
Referenced by sick_start_laser().
int sick_start_laser | ( | sick_laser_p | laser | ) |
Definition at line 656 of file sick.c.
References laser_settings_t::angle_range, laser_settings_t::angle_resolution, laser_settings_t::detect_baudrate, laser, LMS, PLS, RES_0_50_DEGREE, RES_1_00_DEGREE, laser_settings_t::set_baudrate, sick_laser_t::settings, sick_check_baudrate(), sick_connect_device(), sick_detect_baudrate(), sick_set_baudrate(), sick_set_config_mode(), sick_set_laser_baudrate(), sick_set_lms_range(), sick_set_lms_resolution(), sick_start_continuous_mode(), laser_settings_t::start_baudrate, and laser_settings_t::type.
Referenced by initializeLaser().
void sick_stop_continuous_mode | ( | sick_laser_p | laser | ) |
Definition at line 509 of file sick.c.
References ACK, laser, and sick_write_command().
Referenced by sick_stop_laser().
void sick_stop_laser | ( | sick_laser_p | laser | ) |
Definition at line 849 of file sick.c.
References sick_laser_t::dev, laser_device_t::fd, laser, and sick_stop_continuous_mode().
Referenced by main().
int sick_testBaudrate | ( | sick_laser_p | laser, | |
int | brate | |||
) |
Definition at line 522 of file sick.c.
References BUFFER_SIZE, FALSE, laser, MAX_TIME_FOR_TESTING_BAUDRATE, NAK, sick_read_data(), sick_set_baudrate(), sick_write_command(), and TRUE.
Referenced by sick_check_baudrate(), and sick_detect_baudrate().
int sick_valid_packet | ( | unsigned char * | data, | |
long | size, | |||
long * | offset, | |||
long * | len | |||
) |
Definition at line 719 of file sick.c.
References sick_compute_checksum().
Referenced by sick_handle_laser().
int sick_write_command | ( | sick_laser_p | laser, | |
unsigned char | command, | |||
unsigned char * | argument, | |||
int | arg_length | |||
) |
Definition at line 261 of file sick.c.
References ACK, carmen_serial_numChars(), carmen_serial_writen(), sick_laser_t::dev, DLE, laser_device_t::fd, INI, laser, MAX_COMMAND_SIZE, NAK, sick_compute_checksum(), STX, TIO, UKN, and val.
Referenced by sick_request_lms_config(), sick_request_sensor(), sick_request_status(), sick_set_config_mode(), sick_set_laser_baudrate(), sick_set_lms_config(), sick_set_lms_resolution(), sick_start_continuous_mode(), sick_stop_continuous_mode(), and sick_testBaudrate().