Merge remote-tracking branch 'origin/anti-top'

# Conflicts:
#	armor/src/armor_finder/send_target/send_target.cpp
#	energy/src/energy/clear/energy_init.cpp
#	energy/src/energy/find/energy_finder.cpp
#	energy/src/energy/judge/judge_contour.cpp
#	energy/src/energy/run.cpp
#	main.cpp
#	others/src/camera/camera_wrapper.cpp
This commit is contained in:
wanpiqiu123
2019-07-22 09:27:16 +08:00
46 changed files with 27899 additions and 18853 deletions

View File

@@ -48,6 +48,7 @@ public:
bool readRaw(cv::Mat& src);
bool readProcessed(cv::Mat& src);
bool changeBrightness(int brightness);
// bool once
};

View File

@@ -30,6 +30,18 @@
#ifndef ENERGY_CAMERA_GAIN
#define ENERGY_CAMERA_GAIN (20)
#endif
#ifndef AIM_KP
#define AIM_KP (6)
#endif
#ifndef AIM_KI
#define AIM_KI (0.1)
#endif
#ifndef COMPENSATE_YAW
#define COMPENSATE_YAW (5)
#endif
#ifndef COMPENSATE_PITCH
#define COMPENSATE_PITCH (74)
#endif
//#define GIMBAL_FLIP_MODE (-1)
//#define CHASSIS_FLIP_MODE (-1)

View File

@@ -30,27 +30,27 @@ extern ArmorFinder armorFinder;
extern Energy energy;
void uartReceive(Serial *pSerial) {
char buffer[20];
int cnt = 0;
char buffer[30];
LOGM(STR_CTR(WORD_LIGHT_WHITE, "data receive start!"));
while (true) {
char byte = 0;
memset(buffer, 0, sizeof(buffer));
while (pSerial->ReadData((uint8_t *) &byte, 1) && byte != '\n') {
buffer[cnt++] = byte;
if (cnt >= sizeof(buffer)) {
// LOGE("data receive over flow!");
cnt = 0;
}
}
if (cnt == 0 && byte == '\n') {
// LOGM("%d", cnt);
}
if (cnt == sizeof(mcuData)) {
pSerial->ReadData((uint8_t *) buffer, sizeof(mcuData)+1);
if (buffer[sizeof(mcuData)] == '\n') {
memcpy(&mcuData, buffer, sizeof(mcuData));
// LOGM("Get, state:%c, mark:%d!", mcuData.state, (int) mcuData.mark);
// LOGM("Get yaw: %f, pitch: %f!", mcuData.curr_yaw, mcuData.curr_pitch);
// static int t = time(nullptr);
// static int cnt = 0;
// if(time(nullptr) > t){
// t = time(nullptr);
// LOGM("fps:%d", cnt);
// cnt = 0;
// }else{
// cnt++;
// }
}else{
// LOGW("corrupt data!");
}
cnt = 0;
}
}
@@ -76,12 +76,12 @@ cv::VideoWriter initVideoWriter(const std::string &filename_prefix) {
bool checkReconnect(bool is_camera_0_connect, bool is_camera_1_connect) {
if (!is_camera_0_connect) {
delete video_gimbal;
video_gimbal = new CameraWrapper(0, "armor");
video_gimbal = new CameraWrapper(0/*, "armor"*/);
is_camera_0_connect = video_gimbal->init();
}
if (!is_camera_1_connect) {
delete video_chassis;
video_chassis = new CameraWrapper(1, "energy");
video_chassis = new CameraWrapper(1/*, "energy"*/);
is_camera_1_connect = video_chassis->init();
}
return is_camera_0_connect && is_camera_1_connect;
@@ -90,7 +90,7 @@ bool checkReconnect(bool is_camera_0_connect, bool is_camera_1_connect) {
bool checkReconnect(bool is_camera_connect) {
if (!is_camera_connect) {
delete video_gimbal;
video_gimbal = new CameraWrapper(0, "armor");
video_gimbal = new CameraWrapper(0/*, "armor"*/);
is_camera_connect = video_gimbal->init();
}
return is_camera_connect;

View File

@@ -191,7 +191,7 @@ Serial::Serial(int nSpeed, char nEvent, int nBits, int nStop) :
nSpeed(nSpeed), nEvent(nEvent), nBits(nBits), nStop(nStop) {
if (wait_uart) {
LOGM("Wait for serial be ready!");
while (InitPort(nSpeed, nEvent, nBits, nStop) == false);
while (!InitPort(nSpeed, nEvent, nBits, nStop));
LOGM("Port set successfully!");
} else {
if (InitPort(nSpeed, nEvent, nBits, nStop)) {
@@ -234,7 +234,7 @@ bool Serial::WriteData(const unsigned char *pData, unsigned int length) {
return false;
}
while ((curr = write(fd, pData + cnt, length - cnt)) > 0 && (cnt += curr) < length);
if (cnt < 0) {
if (curr < 0) {
LOGE("Serial offline!");
close(fd);
if (wait_uart) {
@@ -248,7 +248,7 @@ bool Serial::WriteData(const unsigned char *pData, unsigned int length) {
bool Serial::ReadData(unsigned char *buffer, unsigned int length) {
int cnt = 0, curr = 0;
while ((curr = read(fd, buffer + cnt, length - cnt)) > 0 && (cnt += curr) < length);
if (cnt < 0) {
if (curr < 0) {
LOGE("Serial offline!");
close(fd);
if (wait_uart) {