update state for throughput analysis
This commit is contained in:
@@ -41,7 +41,7 @@
|
||||
// armBots.filter(arm => arm.modelUuid === item.modelUuid)
|
||||
// .forEach(arm => {
|
||||
// if (arm.activeTime >= 0) {
|
||||
// console.log('armBot activeTime:', arm.activeTime);
|
||||
//
|
||||
// }
|
||||
// });
|
||||
// } else if (item.type === "vehicle") {
|
||||
@@ -109,7 +109,7 @@
|
||||
// useEffect(() => {
|
||||
// if (totalActiveTime > 0 && materialCycleTime > 0) {
|
||||
// const avgProcessTime = (totalActiveTime / materialCycleTime) * 100;
|
||||
// console.log('Throughput (%):', avgProcessTime.toFixed(2));
|
||||
//
|
||||
// }
|
||||
// }, [totalActiveTime, materialCycleTime]);
|
||||
|
||||
@@ -143,7 +143,8 @@ export default function ThroughPut() {
|
||||
const { materials } = useMaterialStore();
|
||||
|
||||
const { setMachineCount } = useMachineCount();
|
||||
const { setMachineActiveTime } = useMachineUptime();
|
||||
const { machineActiveTime, setMachineActiveTime } = useMachineUptime();
|
||||
console.log('machineActiveTime: ', machineActiveTime);
|
||||
const { setMaterialCycleTime } = useMaterialCycle();
|
||||
|
||||
const [totalActiveTime, setTotalActiveTime] = useState(0);
|
||||
@@ -178,9 +179,9 @@ export default function ThroughPut() {
|
||||
useEffect(() => {
|
||||
let sum = 0;
|
||||
|
||||
console.log('armBots: ', armBots);
|
||||
|
||||
armBots.forEach(arm => {
|
||||
console.log('arm.activeTime: ', arm.activeTime);
|
||||
|
||||
if (arm.activeTime > 0) sum += arm.activeTime;
|
||||
});
|
||||
|
||||
@@ -200,27 +201,33 @@ export default function ThroughPut() {
|
||||
if (storage.activeTime > 0) sum += 8; // static
|
||||
});
|
||||
|
||||
console.log('sum: ', sum);
|
||||
|
||||
|
||||
const avgProcessTime = 100 - 50; // static 50
|
||||
|
||||
const machineUptime = (sum / avgProcessTime) * 100;
|
||||
console.log('machineUptime: ', machineUptime.toFixed(2));
|
||||
console.log('machineUptime: ', machineUptime);
|
||||
|
||||
|
||||
|
||||
const machineCount = 3; // static
|
||||
const throughput = (3600 / avgProcessTime) * machineCount * (machineUptime / 100); // **IMPORTANT divide by 100 for %**
|
||||
console.log('throughPutData: ', throughput.toFixed(2));
|
||||
|
||||
|
||||
|
||||
setTotalActiveTime(sum);
|
||||
setMachineActiveTime(sum);
|
||||
setMachineActiveTime(machineUptime)
|
||||
setMaterialCycleTime(throughput)
|
||||
// setMachineActiveTime(sum);
|
||||
setThroughputData(throughput); // Save it properly here
|
||||
|
||||
}, [armBots, vehicles, machines, conveyors, storageUnits, setMachineActiveTime]);
|
||||
|
||||
// Just display throughput when ready
|
||||
useEffect(() => {
|
||||
console.log('throughputData: ', throughputData);
|
||||
|
||||
if (throughputData > 0) {
|
||||
console.log('Final Throughput (units/hour): ', throughputData.toFixed(2));
|
||||
|
||||
}
|
||||
}, [throughputData]);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user