diff --git a/LiDAR/LIDAR.cpp b/LiDAR/LIDAR.cpp index 6a99ce87dea21c0909390ccb625e7aa8d26d0f15..c47888f5375752489d024bb8fcfaadd41c5632f6 100644 --- a/LiDAR/LIDAR.cpp +++ b/LiDAR/LIDAR.cpp @@ -40,6 +40,22 @@ int main(int argc, char const *argv[]) std::vector<LidarScanMode> scanmode; lidar->getAllSupportedScanModes(scanmode); + sl_lidar_response_measurement_node_hq_t nodes[8192]; + size_t nodeCount = sizeof(nodes)/sizeof(sl_lidar_response_measurement_node_hq_t); + res = lidar->grabScanDataHq(nodes, nodeCount, 0); + + if (IS_FAIL(res)) + { + fprintf(stderr, "Failed to grab data\n"); + } + + for (size_t i = 0; i < nodeCount; i++) + { + printf("mesure %i : theta = %.3f°, dist = %.3f m",i,nodes[i].angle_z_q14 * 90.f / (1 << 14), nodes[i].dist_mm_q2 / 1000.f / (1 << 2)); + } + + lidar->stop(); + lidar->disconnect(); // Delete the instances diff --git a/LiDAR/LiDAR b/LiDAR/LiDAR new file mode 100755 index 0000000000000000000000000000000000000000..94c1f44bdd2665f780280a38f4ba175bea50983b Binary files /dev/null and b/LiDAR/LiDAR differ diff --git a/encoder b/encoder index e138fa44e4e6eda295aae3572dadc630fcaeee30..f81889bd05acb64b0cb5c0cad56a1cb622716e1f 100755 Binary files a/encoder and b/encoder differ diff --git a/encoder.cpp b/encoder.cpp index 4b30a6c39a48dc7699694bf7884d0225e0372341..6d5b1b3bd44aae43fb90417e1d2c20a3494731c9 100644 --- a/encoder.cpp +++ b/encoder.cpp @@ -44,15 +44,14 @@ int main(int argc, char const *argv[]) //printf("%02X \n", rawData[i]); //} - while(1) { + while(1) { int result = wiringPiSPIDataRW(SPI_CHANNEL, rawData, BYTE_len); - printf("\n%d %d %d %d", rawData[0], rawData[1], rawData[2], rawData[3]); - //fflush(stdout); + printf("\r%d %d %d %d", rawData[0], rawData[1], rawData[2], rawData[3]); + fflush(stdout); //printf("\n"); - count=(rawData[0]*pow(16, 2))+(rawData[1]*pow(16, 0)); - clock_count=(rawData[2]*pow(16, 2))+(rawData[3]*pow(16, 0)); + count=(rawData[0]*pow(16, 4))+(rawData[1]*pow(16, 2))+(rawData[2]*pow(16, 0)); - speed=clock_count*(2*3.1415/res)*(count-count_delayed); + speed=freq*(2*3.1415/res)*(count-count_delayed); //printf("\r%lf", count); //fflush(stdout); count_delayed=count; @@ -64,21 +63,5 @@ int main(int argc, char const *argv[]) } -/* -while(1) { - int result = wiringPiSPIDataRW(SPI_CHANNEL, rawData, BYTE_len); - printf("\n%d %d %d %d", rawData[0], rawData[1], rawData[2], rawData[3]); - //fflush(stdout); - //printf("\n"); - count=(rawData[0]*pow(16, 4))+(rawData[1]*pow(16, 2))+(rawData[2]*pow(16, 0)); - - speed=freq*(2*3.1415/res)*(count-count_delayed); - //printf("\r%lf", count); - //fflush(stdout); - count_delayed=count; - //printf("\n"); - //sleep(0.5); - } - */ \ No newline at end of file diff --git a/rplidar_sdk-master/mak_common.inc b/rplidar_sdk-master/mak_common.inc index fa75bb5d86ac20abb47c9061db02fe48898b4baf..a564032b681ce479883dfd20f8af781b282ba548 100644 --- a/rplidar_sdk-master/mak_common.inc +++ b/rplidar_sdk-master/mak_common.inc @@ -72,7 +72,7 @@ $(APP_TARGET): $(OBJ) $(EXTRA_OBJ) $(SDK_TARGET) @$(MKDIR) `dirname $@` @echo " LD $@" $(CMD_HIDE)$(CC) $(ALL_CXXFLAGS) -o $@ $^ $(LDFLAGS) - mv $(BUILD_ROOT)/output/$(BUILD_TARGET_PLATFORM)/$(OUTPUT_BUILD_PREFIX)/lidar $(BUILD_ROOT)/../LiDAR + mv $(BUILD_ROOT)/output/$(BUILD_TARGET_PLATFORM)/$(OUTPUT_BUILD_PREFIX)/LiDAR $(BUILD_ROOT)/../LiDAR #