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

랩뷰 아두이노.

랩뷰와 아두이노를 이용하여 DC모터를 서보모터를 만드는 PID 제어 입니다.

프로그램이 이해가 되지 않아 차근히 설명 부탁드립니다. 

첫 번째 사진은 서브VI, 두 번째 사진이 본 프로그램입니다.

캡처.PNG캡처1.PNG

0 포인트
1/4 메시지
951 조회수

어느 부분이 이해가 안되는 지요?

 

대략 전체 프로그램을 보니 아래 기능이 20ms 에 반복실행 되네요. (20ms안에 실행완료 될지는 미지수지만.. )

  • AI : 아날로그 입력으로 피드백값을 읽는다
  • 서브VI : 피드백(Feedback)값과 지령(Control), PID gains 값을 토대로 pid값 계산한다
  • DO : pid값과 오차범위를 토대로 디지털 2 채널에 출력한다
  • PWM : pid값을 토대로 PWM채널의 duty cycle 을 설정한다
0 포인트
2/4 메시지
923 조회수

1. Sub -vi

 쓰잘 데기 없이 For Loop 쒸운 거. 지워도 동작 같음.

2. Main-VI

 Error 처리가 없이 다음 단계로 넘어 가는 거. 이게 가장 큰 Bug.

 데이타를 취득했을 때 이 데이타가 실제 취득한 데인타인지 확인 후 사용해야 합니다.

 즉 Analog Read 1ch 뒤에 Error Out을 이용하여 에러가 없을때 처리해야 합니다.

 

 Error 일때는 User에게 Data 취득 에러라는 것을 알려줘야 하구요.

 

설명 전에 이 VI 자체에 큰 버그가 있네요.

 

0 포인트
3/4 메시지
912 조회수

뭐.. 다들 먼저 답변 주셨는데.. 추가 좀 하겠습니다.

 

정확히 어떤걸 제어한다는게 빠져있는거 같습니다.

 

DC 모터가 서보가 될 수는 없습니다.

 

구성이 어떤지 모르면 정확히 답변 드리기 어렵습니다.

 

한가지 더 말씀 드리자면. 무분별한 루프의 중첩은 무의미 합니다.

 

예제 찾아보고 하시는거 같은데.. 구조 부터 공부하시길 권해 드립니다.

 

참고로 아두이노 키트로 판매되고 있는 서보라 불리는 작은 모터는 270도 밖에 움직이지 못하는 제품도 있습니다.

0 포인트
4/4 메시지
890 조회수