yct 62d7a85e46 20230627, huli snap7 | hai 1 ano | |
---|---|---|
.. | ||
boost_asio | hai 1 ano | |
communication | hai 1 ano | |
dispatch | hai 1 ano | |
error_code | hai 1 ano | |
message | hai 1 ano | |
network_communication | hai 1 ano | |
rabbitmq | hai 1 ano | |
setting | hai 1 ano | |
snap7_communication | hai 1 ano | |
system | %!s(int64=2) %!d(string=hai) anos | |
task | %!s(int64=2) %!d(string=hai) anos | |
tool | hai 1 ano | |
CMakeLists.txt | hai 1 ano | |
README.md | %!s(int64=2) %!d(string=hai) anos | |
hulitest.sh | %!s(int64=2) %!d(string=hai) anos | |
main.cpp | hai 1 ano | |
proto.sh | hai 1 ano | |
run_dispatch.sh | %!s(int64=2) %!d(string=hai) anos | |
与上位接口表20210315_H.xlsx | %!s(int64=2) %!d(string=hai) anos | |
普爱车库的车位模型(2)(1).xlsx | %!s(int64=2) %!d(string=hai) anos | |
楚天出入口硬件配置参数表_徐晓东_胡力_20210716.xlsx | %!s(int64=2) %!d(string=hai) anos | |
楚天线号表.xlsx | %!s(int64=2) %!d(string=hai) anos | |
楚天调度plc与上位接口表20220616.xlsx | %!s(int64=2) %!d(string=hai) anos | |
楚天调度plc与上位接口表20221025.xlsx | %!s(int64=2) %!d(string=hai) anos | |
楚天调度plc与上位接口表20221102.xlsx | hai 1 ano | |
需求_预估调度时间.docx | %!s(int64=2) %!d(string=hai) anos |
调度负责配合plc, 执行存车取车的指令
维护数据库
commmand_queue 指令表
space 车位表
vehicle 车辆表
接受rabbitmq 状态信息
in_mcpu_N_statu_port 入口单片机
out_mcpu_N_statu_port 出口单片机
measure_N_statu_port 感测雷达
发送rabbitmq 状态信息
dispatch_N_statu_port 调度
a, 周期性 查询数据库 command_queue 指令表
如果有状态为0(排队中)的指令, 选取最优解,
并执行
b1, 存车指令, 查询 space表, 找到合适的空闲车位, 并写入车牌号 表示占有该车位
将车位信息 填充到 command_queue 指令表, 并将状态改为1(工作中)
生成 park_table 存车表单 交给 plc执行
plc执行完成后, 清除存车指令 command_queue, 并保存车辆信息到 vehicle
b2, 取车指令, 查询 vehicle表, 找到之前保存的感测信息, 查询空闲出口id
将感测信息和出口id 填充到 command_queue 指令表, 并将状态改为1(工作中)
生成 pick_table 取车表单 交给 plc执行
plc执行完成后, 修改 command_queue表, 指令状态写2 ,
清除 车辆信息到 vehicle, 清除车位信息 space,
linux x64 / linux-arm
cd xxx/plc调度节点
./proto.sh
mkdir ./build
cd ./build
cmake ..
make
指定运行调度单元
cd xxx/plc调度节点/build
开3个终端界面
./terminal 0
./terminal 1
./terminal 2
一键运行所有单元
cd xxx/plc调度节点
./run_dispatch.sh
依赖三方库
rabbitmq
protobuf
mysql cpp connect 1.1
glog
gflag
snap7