made more changes

it compiles now
This commit is contained in:
2024-10-07 13:22:52 +02:00
parent e5c58bff81
commit fa221cf421
7 changed files with 48 additions and 14 deletions

1
.gitignore vendored
View File

@@ -12,3 +12,4 @@ src/C++/Driver/vgcore.42611
src/Socket/a.out
src/C++/Driver/cmake_install.cmake
src/C++/Socket/a.out
src/C++/Driver/Makefile

View File

@@ -5,10 +5,10 @@ project(kobuki_control)
find_package( OpenCV REQUIRED )
set(SOURCE_FILES
src/CKobuki.cpp
src/CKobuki.h
src/KobukiParser.cpp
src/KobukiParser.h
src/CKobuki.cpp
src/CKobuki.h
src/main.cpp)
add_executable(kobuki_control ${SOURCE_FILES})

View File

@@ -153,6 +153,30 @@ src/CKobuki.cpp.s:
$(MAKE) $(MAKESILENT) -f CMakeFiles/kobuki_control.dir/build.make CMakeFiles/kobuki_control.dir/src/CKobuki.cpp.s
.PHONY : src/CKobuki.cpp.s
src/KobukiParser.o: src/KobukiParser.cpp.o
.PHONY : src/KobukiParser.o
# target to build an object file
src/KobukiParser.cpp.o:
$(MAKE) $(MAKESILENT) -f CMakeFiles/kobuki_control.dir/build.make CMakeFiles/kobuki_control.dir/src/KobukiParser.cpp.o
.PHONY : src/KobukiParser.cpp.o
src/KobukiParser.i: src/KobukiParser.cpp.i
.PHONY : src/KobukiParser.i
# target to preprocess a source file
src/KobukiParser.cpp.i:
$(MAKE) $(MAKESILENT) -f CMakeFiles/kobuki_control.dir/build.make CMakeFiles/kobuki_control.dir/src/KobukiParser.cpp.i
.PHONY : src/KobukiParser.cpp.i
src/KobukiParser.s: src/KobukiParser.cpp.s
.PHONY : src/KobukiParser.s
# target to generate assembly for a file
src/KobukiParser.cpp.s:
$(MAKE) $(MAKESILENT) -f CMakeFiles/kobuki_control.dir/build.make CMakeFiles/kobuki_control.dir/src/KobukiParser.cpp.s
.PHONY : src/KobukiParser.cpp.s
src/main.o: src/main.cpp.o
.PHONY : src/main.o
@@ -189,6 +213,9 @@ help:
@echo "... src/CKobuki.o"
@echo "... src/CKobuki.i"
@echo "... src/CKobuki.s"
@echo "... src/KobukiParser.o"
@echo "... src/KobukiParser.i"
@echo "... src/KobukiParser.s"
@echo "... src/main.o"
@echo "... src/main.i"
@echo "... src/main.s"

View File

@@ -4,13 +4,12 @@
#include <cstddef>
#include <iostream>
// plot p;
static std::vector<float> vectorX;
static std::vector<float> vectorY;
static std::vector<float> vectorGyroTheta;
KobukiParser parser;
// obsluha tty pod unixom
int set_interface_attribs2(int fd, int speed, int parity)
{
@@ -267,16 +266,17 @@ void CKobuki::setSound(int noteinHz, int duration)
pocet = write(HCom, &message, 9);
}
void CKobuki::startCommunication(char *portname, bool CommandsEnabled,
void *userDataL)
void CKobuki::startCommunication(char *portname, bool CommandsEnabled, void *userDataL)
{
connect(portname);
enableCommands(CommandsEnabled);
userData = userDataL;
int pthread_result;
pthread_result =
pthread_create(&threadHandle, NULL, KobukiProcess, (void *)this);
pthread_result = pthread_create(&threadHandle, NULL, KobukiProcess, (void *)this);
if (pthread_result != 0) {
std::cerr << "Error creating thread: " << pthread_result << std::endl;
}
}
int CKobuki::measure()
@@ -295,7 +295,7 @@ int CKobuki::measure()
// citat
if (ok == 0)
{
loop(userData, data);
loop(userData, parser.data);
}
free(message);
}

View File

@@ -30,12 +30,12 @@
#include <iomanip>
#include <chrono>
#include <sstream>
#include "graph.h"
#include "KobukiParser.h"
#include "graph.h"
using namespace std;
// typedef struct
// {
@@ -125,6 +125,7 @@ typedef long(*src_callback_kobuki_data) (void *user_data, TKobukiData &Kobuki_da
class CKobuki
{
public:
CKobuki() {
stopVlakno = 0;
std::cout << "kobuki instantiated" << std::endl;
@@ -159,13 +160,14 @@ public:
void doRotation(long double th);
void goToXy(long double xx, long double yy);
std::ofstream odometry_log;
TKobukiData data;
private:
KobukiParser parser;
int HCom;
pthread_t threadHandle; // handle to the thread
int threadID; // thread id

View File

@@ -1,7 +1,9 @@
#include "KobukiParser.h"
#include <iostream>
int KobukiParser::parseKobukiMessage(TKobukiData &output, unsigned char *data) {
//check if the checksum is correct
std::cout << "Parsing message" << std::endl;
int rtrnvalue = checkChecksum(data);
if (rtrnvalue != 0)
return -2;
@@ -64,6 +66,7 @@ int KobukiParser::parseKobukiMessage(TKobukiData &output, unsigned char *data) {
// break;
default:
checkedValue += length + 2; // Skip data block if nothing matches
std::cout << "Unknown header: " << header << std::endl;
break;
}
}

View File

@@ -9,6 +9,7 @@ using namespace std;
CKobuki robot;
int movement();
int checkCenterCliff();
KobukiParser parser;
int main()
{
@@ -17,14 +18,14 @@ int main()
// thread mv(movement);
// mv.join(); //only exit once thread one is done running
checkCenterCliff();
// checkCenterCliff();
}
int checkCenterCliff()
{
while (true)
{
std::cout << "cliffsensordata:" << parser.data.CliffSensorCenter << std::endl;
std::cout << "cliffsensordata:" << parser.data.BumperCenter << std::endl;
}
}