首次提交完整的python工程代码
This commit is contained in:
69
main.py
Normal file
69
main.py
Normal file
@@ -0,0 +1,69 @@
|
||||
import time
|
||||
from core.link_manager import LinkManager
|
||||
from utils.logger import logger
|
||||
#from global_vars import *
|
||||
|
||||
# def check_battery_safe_mode():
|
||||
# """
|
||||
# 整星电池电压监测 + 安全模式切换
|
||||
# 每收到一帧遥测 调用一次
|
||||
# """
|
||||
# global g_vbat_check_cnt, g_vbat_fail_flag
|
||||
# global g_M050YS055, g_M050YS056, g_M050YS057, g_M050YG073
|
||||
|
||||
# # ====================== 1. 计算三路电池电压 ======================
|
||||
# Vbat1 = g_M002YV020 # 整组电池1
|
||||
# Vbat2 = g_M010YV012 # 整组电池2
|
||||
# Vbat3 = (g_M004YV002 + g_M004YV004 +
|
||||
# g_M004YV006 + g_M004YV008 +
|
||||
# g_M004YV010 + g_M004YV012 +
|
||||
# g_M004YV014 + g_M004YV016 + g_M004YV018) # 单体总和
|
||||
|
||||
# Vth1 = g_M050YV001
|
||||
# Vth2 = g_M050YV002
|
||||
# Vth3 = g_M050YV003
|
||||
|
||||
# # ====================== 2. 单次判断:是否低于阈值 ======================
|
||||
# fail1 = 1 if (Vbat1 < Vth1) else 0
|
||||
# fail2 = 1 if (Vbat2 < Vth2) else 0
|
||||
# fail3 = 1 if (Vbat3 < Vth3) else 0
|
||||
|
||||
# # ====================== 3. 连续3次判断 ======================
|
||||
# total_fail = fail1 + fail2 + fail3
|
||||
|
||||
# if total_fail >= 2:
|
||||
# g_vbat_check_cnt += 1
|
||||
# g_vbat_fail_flag = [fail1, fail2, fail3]
|
||||
# else:
|
||||
# g_vbat_check_cnt = 0
|
||||
# g_vbat_fail_flag = [0, 0, 0]
|
||||
|
||||
# # 超限3次锁定报警
|
||||
# if g_vbat_check_cnt >= 3:
|
||||
# g_M050YS055 = g_vbat_fail_flag[0]
|
||||
# g_M050YS056 = g_vbat_fail_flag[1]
|
||||
# g_M050YS057 = g_vbat_fail_flag[2]
|
||||
# else:
|
||||
# g_M050YS055 = 0
|
||||
# g_M050YS056 = 0
|
||||
# g_M050YS057 = 0
|
||||
|
||||
# # ====================== 4. 整星安全模式触发条件 ======================
|
||||
# if g_M002YV020 < g_M050YV002: # 小于阈值2(默认29V)
|
||||
# g_M050YS056 = 1
|
||||
# g_M050YG073 = 1 # 进入安全模式
|
||||
# else:
|
||||
# g_M050YG073 = 0 # 退出安全模式
|
||||
|
||||
if __name__ == "__main__":
|
||||
lm = LinkManager()
|
||||
lm.register_all()
|
||||
lm.start()
|
||||
logger.info("M16卫星协议转发软件")
|
||||
logger.info("copyright 2026 中国科学院微小卫星创新研究院软件评测中心 All rights reserved.")
|
||||
logger.info("协议转发服务启动完成")
|
||||
|
||||
while True:
|
||||
time.sleep(1)
|
||||
# 执行安全模式判断
|
||||
# check_battery_safe_mode()
|
||||
Reference in New Issue
Block a user