写代码的碎碎念。
1、AGV的目的地,是否接入了物流系统。
否则会无法寻址到,AGV去到了奇怪的地方。
“欸为什么它去了这里,不是要回AGVPool吗?”
“哦妈的没连线。”
一点一点debug完,发现是这个,要老命了。
2、数值判断,是<=还是<。
跑一下看一下效果。
3、充电桩数量有限时,计数充电数量NumCharge。
AGV前往充电桩时,NumCharge+1,提前占位。
AGV完成充电时离开充电桩,NumCharge-1。
注意不要重复计数。
4、if之后的判断条件,or和and混用时要注意。
好像系统是有优先级的,类似先算乘法再算加法。
但没摸清楚。
梳理不清时多套一层if判断。
5、充电排队逻辑。
本来去充电桩,是想要都先过去。
先到的就先冲,位子满了就去边上等待。
在充电桩控件入口触发代码。
但是充电桩控件满了后,之后再前往的AGV无法触发出口控件,就会在路上排队。
所以还是改成了虚拟占位,即使还没到,也先占位。
其他等待充电的AGV在充电站旁的控件等待。