libs/range_sensor/c/samples/get_parameters.c
00001 
00013 #include "urg_ctrl.h"
00014 #include "detect_os.h"
00015 #include <stdio.h>
00016 #include <stdlib.h>
00017 
00018 
00019 static void urg_exit(urg_t *urg, const char *message)
00020 {
00021   printf("%s: %s\n", message, urg_error(urg));
00022   urg_disconnect(urg);
00023 
00024 #ifdef MSC
00025   getchar();
00026 #endif
00027   exit(1);
00028 }
00029 
00030 
00032 int main(int argc, char *argv[])
00033 {
00034 #ifdef WINDOWS_OS
00035   const char device[] = "COM3"; /* For Windows */
00036 #else
00037   const char device[] = "/dev/ttyACM0"; /* For Linux */
00038 #endif
00039 
00040   urg_t urg;
00041   urg_parameter_t parameters;
00042   int ret;
00043 
00044   /* Connection */
00045   urg_initialize(&urg);
00046   ret = urg_connect(&urg, device, 115200);
00047   if (ret < 0) {
00048     urg_exit(&urg, "urg_connect()");
00049   }
00050 
00051   /* Get sensor parameter */
00052   ret = urg_parameters(&urg, &parameters);
00053   printf("urg_getParameters: %s\n", urg_error(&urg));
00054   if (ret < 0) {
00055     urg_disconnect(&urg);
00056     exit(1);
00057   }
00058 
00059   /* Display */
00060   printf("distance_min: %ld\n", parameters.distance_min_);
00061   printf("distance_max: %ld\n", parameters.distance_max_);
00062   printf("area_total: %d\n", parameters.area_total_);
00063   printf("area_min: %d\n", parameters.area_min_);
00064   printf("area_max: %d\n", parameters.area_max_);
00065   printf("area_front: %d\n", parameters.area_front_);
00066   printf("scan_rpm: %d\n", parameters.scan_rpm_);
00067   printf("\n");
00068 
00069   /* Display information from URG structure (same resource as above) */
00070   printf("urg_getDistanceMax(): %ld\n", urg_maxDistance(&urg));
00071   printf("urg_getDistanceMin(): %ld\n", urg_minDistance(&urg));
00072   printf("urg_getScanMsec(): %d\n", urg_scanMsec(&urg));
00073   printf("urg_getDataMax(): %d\n", urg_dataMax(&urg));
00074 
00075 #ifdef MSC
00076   getchar();
00077 #endif
00078 
00079   return 0;
00080 }
 All Classes Namespaces Files Functions Variables Enumerations Enumerator