취소
다음에 대한 결과 표시 
다음에 대한 검색 
다음을 의미합니까? 

Measurment Stdio ScatterGraph 사용중 랙(lag)거리는 현상

ScatterGraph를 이용해서 1초에 30개씩 데이터를 그리고 있는데 2000초 이후부터 lag이 자주 걸려서 1,2 개나 2~3초 사이에 한개 그릴 때도 있습니다. 그래프 그리는 부분을 제거 하고 실행하면 lag걸리는 문제가 없는것으로 봐서 그래프 그리는 쪽에서 발생하는 것 같습니다.

혹시 이런 문제 경험해보신 분이나 해결하신 분이 계시면 도움 부탁드립니다.

프로그램 개발 툴은 VS 2017입니다.

 

 

 

0 포인트
1/7 메시지
2,282 조회수

데이터가 쌓이면서 메모리 쪽에 문제가 생기는 듯 합니다. 그래프가 차트식으로 계속 쌓이는 형태인가요?

0 포인트
2/7 메시지
2,213 조회수

네 PlotXYAppend를 사용하기 때문에 누적이 되긴 합니다.

HistoryCapacity를 500000로 설정을 했고 1초에 30개씩 데이터를 그립니다.

 

 

0 포인트
3/7 메시지
2,205 조회수

2000초 후에 lag 현상이 발생한다면 60000개의 데이터가 플롯되면 그 이후로 부터 메모리에 부담이 오는 것으로 생각되는데 중간 중간 그래프 데이터를 초기화 시켜주는건 어떨까요?

0 포인트
4/7 메시지
2,197 조회수

답변 감사합니다.

데이터 초기화는 그래프를 처음 부터 다시 그리라는 말씀인가요?

그래프를 전부 보여줘야하기 때문에 그렇게는 하지 못합니다.

 

0 포인트
5/7 메시지
2,187 조회수

일단 그래프를 중간에 초기화 시켰을 시 lag 현상이 나타나지 않는다면 결국에는 그래프에 데이터가 쌓임으로써 메모리 부담으로 일어나는 현상임을 확실 시 할 수 있을 것 같습니다.

만약 그렇다면 환경적 사양 때문에 벌어지는 문제이므로 그래프를 전부 보여주지는 못할 것 같습니다.

중간 중간 로깅하여 저장한 뒤 후처리로 그래프를 붙여주는 방식을 사용해야 하지 않을까 싶습니다.

원인 파악을 확실하게 하는 것이 제일 먼저 해 볼 Troubleshooting이지 않을까 싶습니다!

해결되었으면 좋겠네요 ㅜ

0 포인트
6/7 메시지
2,184 조회수

https://guslabview.tistory.com/113  여긴 제가 LabView를 처음접할 당시 많이 찾던 블로그입니다.

위 링크의 포스트를 살펴보면.. Graph에서 메모리점유율을 급증시킬수 있는 요인들중 일부 몇가지가 적혀있습니다.

보시고 해당사항이 있다면 줄여보시는게 좋겠습니다.

 

또 하나 말씀드리자면 프론트패널에서 메모리를 사용하지 않는 인디케이터는 없습니다.

그러나.. LabView에서 가용할 수 있는 메모리의 한계치는 존재합니다.

Graph와 Table처럼 메모리를 이용하여 데이터를 축적하는 경우 또한 메모리의 한계를 피할수 없습니다.

 

Graph에 축적되는 point의 갯수를 제한하는게 제일 안전합니다.

만약, 한번에 다 지우는것이 문제가 될것같다면.. 아래와같은 방법도 좋을것같습니다.

ex)

1. Graph의 point갯수를 지정하는 Controller 생성

2. 매번 Graph에 Data를 삽입 전 현재까지의 Data point개수가 Contoller의 숫자보다 큰지 물어봄

3. 보다 크다: 가장 앞(오래된) Data를 삭제 후 data 삽입, 보다 작다: Data 삽입

 

위 방법은 처음부터 끝까지의 point를 한번에 담을수는 없지만, 측정할때마다 매번 엑셀에 저장한다면..

측정이 끝난 후에 엑셀에서 전체그래프를 그리게 됬을 때 문제없다고 봅니다.

0 포인트
7/7 메시지
2,138 조회수