README.md 3.3 KB

1,简介

消息服务器rabbitmq集群:
ip:   端口:
ip:   端口:
数据库集群:

2, 交换机

交换机分两个,一个负责对接流程消息队列,一个对接各个节点的状态,在服务器提前搭建。
交换机 名称
指令交换机 command_ex
状态交换机 statu_ex

command_ex 指令交换机端口说明:

端口名 发送消息说明
park_command_port 停车指令端口
pick_command_port 取车指令端口
park_response_N_port n号终端停车指令反馈
in_mcpu_response_N_port 入口N号单片机反馈
out_mcpu_response_N_port 出口N号单片机反馈
pick_response_N_port n号终端取车指令反馈
command_enqueue_port 指令入队端口
count_command_signal_N_port N单元指令计数信号端口
request_command_port 请求指令端口
post_command_N_port 向N单元推送指令端口
command_completed_port 指令完成端口

statu_ex 指令交换机端口说明:

各个节点向statu_ex交换机发送自身状态,端口名为节点名称+"_statu_port"
端口名 对应节点
in_mcpu_N_statu_port 入口N号单片机
out_mcpu_N_statu_port 出口N号单片机
measure_N_statu_port N号测量节点
dispatch_N_statu_port N单元调度节点
out_mcpu_N_port 出口单片机端口,车辆离开后发送表单

3,队列

队列名称与交换机端口名保存一致,去掉port,增加queue,如:端口名称park_command_port,对应队列名称park_command_queue
状态消息对应的队列全部由接收端临时创建,临时对接。
open_door_1_queue为出口单片机靠门请求队列,绑定command_completed_port(plc完成端口)

4,数据库表

1,车位表 space
    属性:id,楼层(int floor),层内编号(int subID),高度等级(int height_grade),
        所停车辆车牌(varchar car_number),(int unit)单元号
2,车辆表 vehicle
    属性:车牌号(varchar car_number),唯一码(凭证号)(varchar primary_key),
        实际测量数据(varchar  actually_measure_info)
3, 记录表 record
   属性:唯一码(凭证号)(varchar primary_key),车牌号(varchar car_number),入场时间(datatime in_time),
        所停车位id(int space_id),出场时间(datatime out_time)

4,单元指令队列表 command_queue
    属性:车牌号(varchar car_number),唯一码(varchar primary_key),单元号(int uint_id),排队编号(int queue_id),
        停车还是取车(int type),车位信息(varchar space_info),
        测量信息(取车指令填空)(varchar measure_info), 取车指令出口ID(int export_id)
5,单元指令编号时间表 queue_number_data
    属性:单元号(int unit),最后编号(int,last_number),最后编号时间(datatime input_time)