@@ -28,6 +28,19 @@ function smLinex(run_backwards = false){
2828 result . push ( make_ins ( "F" ) )
2929 //out(run_backwards)
3030 for ( let j = 0 ; j < size ; j ++ ) {
31+ if ( j === 0 ) {
32+ result . push ( [
33+ make_ins ( "S" , "MaxSpeed" , Number ( RapidSpeed_id . value ) ) ,
34+ make_ins ( "S" , "Acceleration" , 0.0001 ) ,
35+ make_ins ( "S" , "StartSpeed" , 0 ) ,
36+ ] )
37+ } else if ( j === 1 ) {
38+ result . push ( [
39+ make_ins ( "S" , "MaxSpeed" , Number ( MaxSpeed_id . value ) ) ,
40+ make_ins ( "S" , "Acceleration" , Number ( Accel_id . value ) ) ,
41+ make_ins ( "S" , "StartSpeed" , Number ( StartSpeed_id . value ) ) ,
42+ ] )
43+ }
3144 let i = j
3245 if ( run_backwards ) {
3346 i = size - j
@@ -201,6 +214,19 @@ function display_center_guess(){
201214 append_in_ui ( "svg_id" , thehtml )
202215}
203216
217+ function update_step_size ( ) {
218+ let step_size = Number ( StepSize_id . value )
219+ out ( "Setting Step Size: " + step_size )
220+ AxisTable = [
221+ [ [ step_size , 0 , 0 , 0 , 0 ] , Dexter . J1_A2D_SIN , Dexter . J1_A2D_COS , [ - 648000 * _arcsec , 0 , 0 , 0 , 0 ] , 1240 / 2 , [ 0 , 0 , 0 , 0 , 0 ] ] ,
222+ [ [ 0 , step_size , 0 , 0 , 0 ] , Dexter . J2_A2D_SIN , Dexter . J2_A2D_COS , [ 0 , - 324000 * _arcsec , 0 , 0 , 0 ] , 1900 / 2 , [ 0 , 0 , 0 , 0 , 0 ] ] ,
223+ [ [ 0 , 0 , step_size , 0 , 0 ] , Dexter . J3_A2D_SIN , Dexter . J3_A2D_COS , [ 0 , 0 , - 500000 * _arcsec , 0 , 0 ] , 1500 / 2 , [ 0 , 0 , 0 , 0 , 0 ] ] ,
224+ [ [ 0 , 0 , 0 , step_size , 0 ] , Dexter . J4_A2D_SIN , Dexter . J4_A2D_COS , [ 0 , 0 , 0 , - 190000 * _arcsec , 0 ] , 1800 / 2 , [ 0 , 0 , 0 , 0 , 0 ] ] ,
225+ [ [ 0 , 0 , 0 , 0 , step_size ] , Dexter . J5_A2D_SIN , Dexter . J5_A2D_COS , [ 0 , 0 , 0 , 0 , - 148000 * _arcsec ] , 4240 / 2 , [ 0 , 0 , 0 , 0 , 0 ] ]
226+ ]
227+ //TODO: this will fail if the joint is looping and the sign of step size in negative
228+ }
229+
204230var old_point_color = "#dedede"
205231
206232var cal_saved_points_old
@@ -248,23 +274,29 @@ function DisplayOldEyePoints(J_num)
248274function init_view_eye ( ) {
249275 //this table has to be here rather than top level in the file even though it is static,
250276 //because _nbits_cf and the other units cause errors if referenced at top level.
251- AxisTable = [ [ [ 800 / _nbits_cf , 0 , 0 , 0 , 0 ] , Dexter . J1_A2D_SIN , Dexter . J1_A2D_COS , [ - 648000 * _arcsec , 0 , 0 , 0 , 0 ] , 1240 / 2 , [ 0 , 0 , 0 , 0 , 0 ] ] ,
252- [ [ 0 , 800 / _nbits_cf , 0 , 0 , 0 ] , Dexter . J2_A2D_SIN , Dexter . J2_A2D_COS , [ 0 , - 324000 * _arcsec , 0 , 0 , 0 ] , 1900 / 2 , [ 0 , 0 , 0 , 0 , 0 ] ] ,
253- [ [ 0 , 0 , 800 / _nbits_cf , 0 , 0 ] , Dexter . J3_A2D_SIN , Dexter . J3_A2D_COS , [ 0 , 0 , - 500000 * _arcsec , 0 , 0 ] , 1500 / 2 , [ 0 , 0 , 0 , 0 , 0 ] ] ,
254- [ [ 0 , 0 , 0 , 800 / _nbits_cf , 0 ] , Dexter . J4_A2D_SIN , Dexter . J4_A2D_COS , [ 0 , 0 , 0 , - 190000 * _arcsec , 0 ] , 1800 / 2 , [ 0 , 0 , 0 , 0 , 0 ] ] ,
255- [ [ 0 , 0 , 0 , 0 , 800 / _nbits_cf ] , Dexter . J5_A2D_SIN , Dexter . J5_A2D_COS , [ 0 , 0 , 0 , 0 , - 148000 * _arcsec ] , 4240 / 2 , [ 0 , 0 , 0 , 0 , 0 ] ] ]
277+ //let step_size = 800/_nbits_cf
278+
279+
280+ update_step_size ( )
281+ /*
282+ let step_size =
283+ AxisTable = [[[step_size, 0, 0, 0, 0], Dexter.J1_A2D_SIN, Dexter.J1_A2D_COS, [-648000*_arcsec, 0, 0, 0, 0], 1240 / 2, [0, 0, 0, 0, 0]],
284+ [[0, step_size, 0, 0, 0], Dexter.J2_A2D_SIN, Dexter.J2_A2D_COS, [0, -324000*_arcsec, 0, 0, 0], 1900 / 2, [0, 0, 0, 0, 0]],
285+ [[0, 0, step_size, 0, 0], Dexter.J3_A2D_SIN, Dexter.J3_A2D_COS, [0, 0, -500000*_arcsec, 0, 0], 1500 / 2, [0, 0, 0, 0, 0]],
286+ [[0, 0, 0, step_size, 0], Dexter.J4_A2D_SIN, Dexter.J4_A2D_COS, [0, 0, 0, -190000*_arcsec, 0], 1800 / 2, [0, 0, 0, 0, 0]],
287+ [[0, 0, 0, 0, step_size], Dexter.J5_A2D_SIN, Dexter.J5_A2D_COS, [0, 0, 0, 0, -148000*_arcsec], 4240 / 2, [0, 0, 0, 0, 0]]]
288+ */
289+
256290
257291 window . cal_working_axis = undefined //global needed by calibrate_ui.js
258292
259293 new Job ( { name : "CalSensors" , keep_history : true , show_instructions : false ,
260294 inter_do_item_dur : .5 * _ms ,
261295 robot : cal_get_robot ( ) ,
262296 do_list : [
263- function ( )
264- {
265- let J_num = window . cal_working_axis + 1
266- DisplayOldEyePoints ( J_num )
267- } ,
297+ make_ins ( "S" , "MaxSpeed" , Number ( RapidSpeed_id . value ) ) ,
298+ make_ins ( "S" , "Acceleration" , 0.0001 ) ,
299+ make_ins ( "S" , "StartSpeed" , 0 ) ,
268300 Dexter . move_all_joints ( 0 , 0 , 0 , 0 , 0 ) ,
269301 Robot . label ( "loop_start" ) ,
270302 make_ins ( "w" , 42 , 64 ) ,
@@ -279,15 +311,25 @@ function init_view_eye(){
279311 make_ins ( "S" , "J5BoundryLow" , - 648000 * _arcsec ) ,
280312 make_ins ( "S" , "J5BoundryHigh" , 648000 * _arcsec ) ,
281313
314+ make_ins ( "S" , "MaxSpeed" , Number ( MaxSpeed_id . value ) ) ,
315+ make_ins ( "S" , "Acceleration" , Number ( Accel_id . value ) ) ,
316+ make_ins ( "S" , "StartSpeed" , Number ( StartSpeed_id . value ) ) ,
317+
318+ /*
282319 make_ins("S", "MaxSpeed", 25*_deg/_s),
283320 make_ins("S", "Acceleration",0.00129),
284321 make_ins("S", "StartSpeed",5),
322+ */
323+
324+
285325 //scan_axis(),
286326 smLinex ,
287327 display_center_guess ,
328+ /*
288329 make_ins("S", "MaxSpeed",40),
289330 make_ins("S", "Acceleration",0.00129),
290331 make_ins("S", "StartSpeed",5),
332+ */
291333 function ( ) {
292334 if ( cal_is_loop_checked ( window . cal_working_axis + 1 ) ) { //if looping
293335 return [
@@ -298,15 +340,21 @@ function init_view_eye(){
298340 ]
299341 }
300342 } ,
343+ make_ins ( "S" , "MaxSpeed" , Number ( RapidSpeed_id . value ) ) ,
344+ make_ins ( "S" , "Acceleration" , 0.0001 ) ,
345+ make_ins ( "S" , "StartSpeed" , 0 ) ,
346+ Dexter . empty_instruction_queue ,
347+ Robot . wait_until ( 1 ) ,
301348 Dexter . move_all_joints ( 0 , 0 , 0 , 0 , 0 ) ,
302349 Dexter . empty_instruction_queue ,
303350 function ( ) {
304351 let J_num = window . cal_working_axis + 1
305352 let start_button_dom_elt = window [ "Start_J_" + J_num + "_id" ]
306353 start_button_dom_elt . style . backgroundColor = "rgb(230, 179, 255)"
307354 cal_instructions_id . innerHTML =
308- "Click in the center of the dot_pattern circle."
309- }
355+ "Click in the center of the dot_pattern circle.<br/>"
356+ } ,
357+ Dexter . set_parameter ( "RunFile" , "Defaults.make_ins" )
310358 ] } )
311359 cal_init_view_eye_state = false
312360}
0 commit comments