Here are my soak test scripts.
These can be used to help iron out movement issues and reduce the current draw of the motors for improved reliability.
See Current settings for X,Y and Z for my recommend method to calculate the reduced current draw settings.
X Soak test
-- Define the number of cycles for the soak test
local cycles = 100
-- Rehome the FarmBot
find_home()
-- Move to the starting position z = 0, y = 0
move_absolute(0, 0, 0)
-- Perform the soak test for the specified number of cycles
for i = 1, cycles do
-- Move to x = 1200
move_absolute(500, 0, 0)
-- Move to x = 1500
move_absolute(800, 0, 0)
-- Report the current cycle count
toast("Completed cycle " .. i .. " of " .. cycles)
end
-- Move to the final position 0,0,0
move_absolute(0, 0, 0)
-- Ask the user to verify there are no movement errors and the head is at 0,0,0
send_message("info", "Please verify there are no movement errors in the log and visually confirm the head is at 0,0,0.", "toast")
Y Soak Test
-- Define the number of cycles for the soak test
local cycles = 100
-- Rehome the FarmBot
find_home()
-- Move to the starting position z = 0, y = 0
move_absolute(0, 0, 0)
-- Perform the soak test for the specified number of cycles
for i = 1, cycles do
move_absolute(500, 300, 0)
move_absolute(500, 800, 0)
-- Report the current cycle count
toast("Completed cycle " .. i .. " of " .. cycles)
end
-- Move to the final position 0,0,0
move_absolute(0, 0, 0)
-- Ask the user to verify there are no movement errors and the head is at 0,0,0
send_message("info", "Please verify there are no movement errors in the log and visually confirm the head is at 0,0,0.", "toast")
Z Soak test
-- Define the number of cycles for the soak test
local cycles = 100
-- Rehome the FarmBot
find_home()
-- Move to the starting position z = 0, y = 0
move_absolute(0, 0, 0)
-- Perform the soak test for the specified number of cycles
for i = 1, cycles do
move_absolute(500, 500, 0)
move_absolute(500, 500, -200)
-- Report the current cycle count
toast("Completed cycle " .. i .. " of " .. cycles)
end
-- Move to the final position 0,0,0
move_absolute(0, 0, 0)
-- Ask the user to verify there are no movement errors and the head is at 0,0,0
send_message("info", "Please verify there are no movement errors in the log and visually confirm the head is at 0,0,0.", "toast")