-
async 유무의 차이 - app.set_system_var_double_async() 에서tip 2024. 12. 26. 11:19
CAN 신호들로 실시간 연산하기 - 미니프로그램으로 yaw_rate_ws 계산 :: hsl's tsmaster 사용기에서 CAN의 WHL_SPD_RL과 WHL_SPD_RR을 이용하여 요-레이트를 구하고 이를 로컬 변수인 yaw_rate_ws에 할당하였다. 그리고 yaw_rate_ws를 사용자 정의 시스템 변수인 calc.yaw_rate_ws에 할당한 후, calc.yaw_rate_ws를 그래픽 창에 곡선으로 출력하였다.
yaw_rate_ws를 calc.yaw_rate_ws에 할당할 때 app.set_system_var_double('calc.yaw_rate_ws', yaw_rate_ws) 함수를 사용하였다. 이 함수와 유사한 이름의 app.set_system_var_double_async('calc.yaw_rate_ws', yaw_rate_ws) 함수가 있다.
set_system_var_double()를 이용하면 그래픽 창에 곡선이 잘 표시되는 반면에 set_system_var_double_async()를 이용하면 표시가 안 되는 차이가 있다. 두 함수 모두 calc.yaw_rate_ws에 yaw_rate_ws 변수를 잘 할당한다.
set_system_var_double_async() 의 Examples를 보면 아래의 커멘트가 있다.
# Note: no "OnChange" events will be fired in async mode!
이상에서 추론해보면, 시스템 변수를 그래픽 창에 곡선으로 그려지도록 하기 위해서는 시스템 변수가 변경되었을 때 OnChange 이벤트가 발생하도록 해야 한다. 즉, set_system_var_double( ) 함수를 사용해야 한다. 그렇지 않고 연산만 필요한 경우 app.set_system_var_double_async( )를 사용하면 된다.
'tip' 카테고리의 다른 글
mdf 데이터 파일을 읽어서 그래프 그리기 (1) 2025.01.01 CAN dbc 편집 (0) 2024.12.30 LIN 핀 번호 - 벡터와 토선이 다르다. (0) 2024.12.26 CAN 커넥터와 Y-케이블 (0) 2024.12.14 YouTube TSMaster 비디오 목록 (0) 2024.12.12