From bf1b79c8816c7b6f0d3e83d9de1b7f79433c09fd Mon Sep 17 00:00:00 2001
From: ddebernardde <diego.debernard@student.uclouvain.be>
Date: Fri, 25 Nov 2022 17:05:27 +0100
Subject: [PATCH] lidar presque ok

---
 LIDAR.cpp                                    |  46 -------------------
 encoder                                      | Bin 9424 -> 9412 bytes
 encoder.cpp                                  |  40 ++++++++++++----
 lidar                                        | Bin 0 -> 66076 bytes
 rplidar_sdk-master/app/ultra_simple/main.cpp |  12 +++--
 rplidar_sdk-master/mak_common.inc            |   5 +-
 rplidar_sdk-master/sdk/include/rplidar.h     |   2 +-
 7 files changed, 44 insertions(+), 61 deletions(-)
 delete mode 100644 LIDAR.cpp
 create mode 100755 lidar

diff --git a/LIDAR.cpp b/LIDAR.cpp
deleted file mode 100644
index 2e7476a..0000000
--- a/LIDAR.cpp
+++ /dev/null
@@ -1,46 +0,0 @@
-#include "./rplidar_sdk-master/sdk/include/sl_lidar.h" 
-#include "./rplidar_sdk-master/sdk/include/sl_lidar_driver.h"
-#include <stdio.h>
-#include <stdlib.h>
-#include <signal.h>
-#include <string.h>
-#include <unistd.h>
-
-using namespace sl;
-
-int main(int argc, char const *argv[])
-{
-    // Create communication instance channel
-    IChannel *channel;
-    channel = *createSerialPortChannel("/dev/ttyUSB0", 115200);
-    // LiDAR Driver instance
-    ILidarDriver *lidar = *createLidarDriver();
-    auto res = lidar->connect(channel);
-
-    if (SL_IS_OK(res)) {
-        // Infos sur le LiDAR
-        sl_lidar_response_device_info_t deviceInfo;
-        res = lidar->getDeviceInfo(deviceInfo);
-        if (SL_IS_OK(res)) {
-            printf("Model: %d, Firmware Version: %d.%d, Hardware Version: %d\n",
-            deviceInfo.model,
-            deviceInfo.firmware_version >> 8, deviceInfo.firmware_version & 0xffu,
-            deviceInfo.hardware_version);
-        } else {
-            fprintf(stderr, "Failed to get device information from LIDAR %08x\r\n", res);
-        }
-    } else {
-        fprintf(stderr, "Failed to connect to LIDAR %08x\r\n", res);
-    }
-
-    lidar->setMotorSpeed(0);
-
-    std::vector<LidarScanMode> scanmode;
-    lidar->getAllSupportedScanModes(scanmode);
-
-    // Delete the instances
-    delete lidar;
-    delete channel;
-
-    return 0;
-}
diff --git a/encoder b/encoder
index 0acc8488daac86295ef30f4b9fcd2a7eb6fb8f55..e138fa44e4e6eda295aae3572dadc630fcaeee30 100755
GIT binary patch
delta 3173
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

delta 3164
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

diff --git a/encoder.cpp b/encoder.cpp
index c8db2d1..4b30a6c 100644
--- a/encoder.cpp
+++ b/encoder.cpp
@@ -14,9 +14,11 @@ const int SPI_CHANNEL=1;
 unsigned char rawData[BYTE_len];
 unsigned char rawData_delayed[BYTE_len];
 float count;
+float clock_count;
 float count_delayed;
 float speed;
-int freq=50000;
+int freq=500000;
+int res = 2048;
 int main(int argc, char const *argv[])
 {   
     
@@ -32,8 +34,10 @@ int main(int argc, char const *argv[])
 
     //memset(rawData,0x01,BYTE_len);
     //rawData[0]=0x0F;
-    rawData[3]=0xFF;
-    rawData[0]=0x11;
+    rawData[3]=0x00;
+    rawData[2]=0x00;
+    rawData[1]=0x00;
+    rawData[0]=0x00;
     int fd = wiringPiSPISetup(SPI_CHANNEL, 500000);
 
     //for (int i=0; i<4; i++){
@@ -42,19 +46,39 @@ int main(int argc, char const *argv[])
 
     while(1) { 
         int result = wiringPiSPIDataRW(SPI_CHANNEL, rawData, BYTE_len);
-        printf("\n%02X %02X %02X %02X", rawData[0], rawData[1], rawData[2], rawData[3]); 
+        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));
+        count=(rawData[0]*pow(16, 2))+(rawData[1]*pow(16, 0));
+        clock_count=(rawData[2]*pow(16, 2))+(rawData[3]*pow(16, 0));
         
-        //speed=100*(count-count_delayed);
+        speed=clock_count*(2*3.1415/res)*(count-count_delayed);
         //printf("\r%lf", count); 
         //fflush(stdout);
         count_delayed=count;
         //printf("\n");
-        sleep(0.5);
+        //sleep(0.5);
     }
        
     return 0;
     
-}
\ No newline at end of file
+}
+
+/*
+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/lidar b/lidar
new file mode 100755
index 0000000000000000000000000000000000000000..ea924f6bf2731f93cfe0a0c177158a3659f4cdac
GIT binary patch
literal 66076
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%0Aa9ZPk|sQU||0-P9f3+|Zw-UES3UHfUPo>^5tf
zhIX-aH9?0^<T1G_+~?;;^7*=U?U=FKc1(IAF$w=1beG)oNh3=EM{C7VkK@^W7(HgU
z8b&Gis<Yf2){SS+$T)?)WnJt?iiu=%DTmcM-eiE>HkB6lt()q(O?C8LgX&N=bk_lu
z7-+VIvM&cZ?WXA^G@V;=0j&zBOb)u^ZNc|u%M?yd>P>T`<Gf*)Y_Y1n`X<YuRNELH
zRL5-ptF(SwuMQVOY(!PG$=gj*wi}&GSEpsWnqjY&fsKl@MJ;Vst_nITm0GdZVY2DK
z+G(qG3Ej9uwmIkh)bw;m=d2o*?UONG9;*BFWGv$0;WA!pz%{C?Yr))M-VEwB5wBFE
zAdVgG_;jOK%5N>^^&@OjZ;kv}A!!9aEQomia0Th9YgAVh{M`ip`G+>(fmRPn<X1Pf
zQY7Nsk`!@lg5!TV4&wDHCo>VpUU(djSx$9Z%rA&|P*Cr2sF>;%4i(efGq%jAj(0AQ
znO`pEP>?DzPzl2$E8^Jv;k!jDZ9l@s$~4|Z2+ccM*K)-xlp==TGW>YfR~Eo}ZB){j
z4qp|+YhaR(XMokfXT1(4-;pEVkj2Ndr|^23=p{i1zDvh2h9CYGVwL&w%&;@yJB1%!
zJ(Gca{O!k&pAC?YXV&rE(Bt^w(-2uU^6>r0yYRzf$#>}nyu%CzpF|yyv<&y*f1Xdr
z^mz8zek5MUy~&r)`8$Xo&$Ht_&m?;md@tgj`I@rfR(udYyxuS4@JzhpJ@{r1*rZ2Z
zzMuCHe&pMQAJ5P`3%(<|zIe@8rb#}&d&sgfAHMrM%x?s6Z-S}P$ML}Msq^vBe=MvH
zri`BiHhlcH<1sW=-y?=gm5t~zi;rh;J^y%%M!L!O3C+i>csAIJ;Jf7HOa8yK_;{w)
zxf6Id(<B0#xqU|Q)gHu^XKlT967T#XJ@YAs;X9}JWIOYltOK8Gr2$eiy>H;2pIJ~A
z`0Z8U3wWmy_a-ns{=S1B-@_&!zu9^Kd?qhElJ~^_f*;$DeEjy}2>6chfet3l4}sZd
z<dffoeGymi@fid8*uR(YGwI21!JdZvI_Z)3XBHpdp<a!KVtf-!zE|*o&zUdZRbCIi
z4Tgwk=5_`0U^adDF_15=Zsq@^@wW>9A+4Gr?FQdA12hjId97|23*hT}C%(bJa~`?I
nd?9L5=4G4Up5fGY(cYWXJ^yDq3~TVS`8NF=X&EAD=JtO8u^|7{

literal 0
HcmV?d00001

diff --git a/rplidar_sdk-master/app/ultra_simple/main.cpp b/rplidar_sdk-master/app/ultra_simple/main.cpp
index 3f5463a..f3c142f 100644
--- a/rplidar_sdk-master/app/ultra_simple/main.cpp
+++ b/rplidar_sdk-master/app/ultra_simple/main.cpp
@@ -293,13 +293,17 @@ int main(int argc, const char * argv[]) {
             break;
         }
 
+        drv->stop();
+	    delay(200);
+        
+        drv->setMotorSpeed(0);
         goto on_finished;
     }
 
-    drv->stop();
-	delay(200);
-    drv->setMotorSpeed(0);
-        
+    
+    
+    
+
 
     // done!
 on_finished:
diff --git a/rplidar_sdk-master/mak_common.inc b/rplidar_sdk-master/mak_common.inc
index 0b63e8d..87188d2 100644
--- a/rplidar_sdk-master/mak_common.inc
+++ b/rplidar_sdk-master/mak_common.inc
@@ -72,6 +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)/..
 
 
 #
@@ -81,6 +82,7 @@ $(TARGET_OBJ_ROOT)/%.o: %.cpp
 	@echo " CXX  $<"
 	$(CMD_HIDE)$(CXX) -c $(ALL_CXXFLAGS) $< -o $@ 
 
+
 # Compile: create object files from C source files.
 $(TARGET_OBJ_ROOT)/%.o: %.c
 	@$(MKDIR) `dirname $@`
@@ -91,5 +93,4 @@ $(TARGET_OBJ_ROOT)/%.o: %.c
 $(TARGET_OBJ_ROOT)/%.o: %.S
 	@$(MKDIR) `dirname $@`
 	@echo " AS   $<"
-	$(CMD_HIDE)$(CC) -c $(ALL_ASFLAGS) $< -o $@
-
+	$(CMD_HIDE)$(CC) -c $(ALL_ASFLAGS) $< -o $@
\ No newline at end of file
diff --git a/rplidar_sdk-master/sdk/include/rplidar.h b/rplidar_sdk-master/sdk/include/rplidar.h
index 2f7de3d..a6dd538 100644
--- a/rplidar_sdk-master/sdk/include/rplidar.h
+++ b/rplidar_sdk-master/sdk/include/rplidar.h
@@ -35,7 +35,7 @@
 #pragma once
 
 #include <vector>
-#include "hal/types.h"
+#include "../src/hal/types.h"
 #include "rplidar_protocol.h"
 #include "rplidar_cmd.h"
 
-- 
GitLab