# 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)