This commit is contained in:
2026-04-17 09:04:01 +08:00
parent 57957e69c7
commit feb39a0355
4 changed files with 45 additions and 24 deletions

View File

@ -131,49 +131,38 @@ STRSensorInfo SensorIS11::GetSensorInfo()
return setem;
}
//shutter1 1关 2开
void SensorIS11::SetShutter(int id)
{
switch (id) {
case 1:
{ //关
// digitalWrite(5,LOW);
shutter_off();
case 1:{ //关
digitalWrite(5,LOW);
vTaskDelay(200);
break;
}
case 2:
{ //开
// digitalWrite(5,HIGH);
shutter_up();
case 2:{ //开
digitalWrite(5,HIGH);
vTaskDelay(200);
break;
}
}
}
//0下 1上
void SensorIS11::servo_direction(int direction)
{
switch (direction)
{
case 0:{
shutter_down();
// servo_set_angle(12);
servo_down();
vTaskDelay(500);
shutter_off();
vTaskDelay(1500);
break;
}
case 1:{
shutter_up();
// servo_set_angle(200);
servo_up();
vTaskDelay(500);
shutter_off();
vTaskDelay(1500);
break;
}
}
@ -537,16 +526,32 @@ void SensorIS11::TakeOneJob()
// write_log(log_path,"start",10);
//1 opt_up
#if SHUTTER_TYPE == 1
servo_direction(1);
SetShutter(2);
#elif SHUTTER_TYPE == 2
shutter_up();
#endif
shutterup=OptSnenser(70);
shutterdown = shutterup;
#if SHUTTER_TYPE == 1
SetShutter(1);
#elif SHUTTER_TYPE == 2
shutter_off();
#endif
work_progress = 30;
//2 dark
//dark_up
#if SHUTTER_TYPE == 1
SetShutter(1);
#elif SHUTTER_TYPE == 2
shutter_up();
#endif
GetOneDate(shutterup);
for (int i = 0; i < SensorInfo.BandNum;i++)
{
@ -583,9 +588,16 @@ void SensorIS11::TakeOneJob()
work_progress = 45;
//3 dn_up
#if SHUTTER_TYPE == 1
SetShutter(2);
GetOneDate(shutterup);
SetShutter(1);
#elif SHUTTER_TYPE == 2
shutter_up();
GetOneDate(shutterup);
shutter_off();
#endif
for (int i = 0; i < SensorInfo.BandNum;i++)
{
IS11_datastruct_up.data[i] = DATABUFF[i];
@ -605,10 +617,17 @@ void SensorIS11::TakeOneJob()
work_progress = 60;
//4 dn_down
#if SHUTTER_TYPE == 1
servo_direction(0);
SetShutter(2);
GetOneDate(shutterup);
GetOneDate(shutterdown);
SetShutter(1);
#elif SHUTTER_TYPE == 2
shutter_down();
GetOneDate(shutterup);
shutter_off();
#endif
for (int i = 0; i < SensorInfo.BandNum;i++) {
IS11_datastruct_down.data[i] = DATABUFF[i];

View File

@ -14,6 +14,8 @@
#include "InterpolationLib.h"
#include "CastumullSpline.h"
#define SHUTTER_TYPE 2
extern struct IS11_datastruct IS11_datastruct_fanshelv;
extern struct IS11_datastruct IS11_datastruct_up;
extern struct IS11_datastruct IS11_datastruct_down;

View File

@ -48,8 +48,8 @@ void log_init()
void write_log(String path,String write_data,unsigned char level)
{
if(level <5) {
// U0_Serial.println(write_data);
Serial0.println(write_data);
U0_Serial.println(write_data);
// Serial0.println(write_data);
}
if (level == 20)
{

View File

@ -54,7 +54,7 @@ void servo_up()
{
float a = 180 + servo_offset_angle_up;
if(a < 0 || a > 270) a = 180;
Serial0.printf("up %f,offset %f\n",a,servo_offset_angle_up);
// Serial0.printf("up %f,offset %f\n",a,servo_offset_angle_up);
// servo_set_angle(200);
// servo_set_angle(213);
servo_set_angle(a);
@ -64,7 +64,7 @@ void servo_down()
{
float a = 0 + servo_offset_angle_down;
if(a < 0 || a > 270) a = 0;
Serial0.printf("down %f,offset %f\n",a,servo_offset_angle_down);
// Serial0.printf("down %f,offset %f\n",a,servo_offset_angle_down);
// servo_set_angle(12);
// servo_set_angle(28);
servo_set_angle(a);