[편집자주] 모터 제어 기술이 전기차, 스마트팩토리, 로보틱스 등 첨단 산업에서 핵심으로 대두되면서 Matlab, Simulink, 각종 MCU 툴 활용이 업그레이드 되고 있다. 오는 14일 서울 삼성동 코엑스에서 개최하는 e4ds 모터제어 기술 컨퍼런스에서는 산업·학계 전문가들을 한자리에 초청해 엔지니어와 개발자들의 최신 기술역량 함양과 인사이트를 공유하는 시간을 가진다.
[편집자주] 모터 제어 기술이 전기차, 스마트팩토리, 로보틱스 등 첨단 산업에서 핵심으로 대두되면서 Matlab, Simulink, 각종 MCU 툴 활용이 업그레이드 되고 있다. 오는 14일 서울 삼성동 코엑스에서
e4ds 모터제어 기술 컨퍼런스가 개최된다. 산업·학계 전문가들을 한자리에 초청해 엔지니어와 개발자들을 위한 기술 역량 증진과 최신 기술 인사이트들이 공유될 예정이다.
이에 앞서 ‘Matlab Simulink를 이용한 DC모터 제어 데모 및 해석’에 대해 발표하는 임종수 수진 대표를 만나 모터 제어와 개발 노하우에 대해 간략히 이야기를 나눴다.
▲임종수 수진 대표
■ 간단한 회사 소개 부탁드린다
저는 미국 아날로그디바이스를 퇴사하고 ‘수진’을 (창업해) 사업을 시작하면서 역점을 둔 것은 정밀 연기 감지기이다. 실시간으로 연기를 측정하고 그다음 연기와 수증기를 구분하면서 디지털로 인터페이스를 할 수 있는 485, CAN, 232 모드버스 통신 기반 연기감지기와 수소차에 들어가는 수소·일산화탄소와 각종 유해가스를 검출하는 전기화학 분야, 적선 전력기 등 전력 분석쪽 제품을 만들고 있다.
개인적으로는 출판업을 하며 ST마이크로일렉트로닉스, 코어텍스 관련된 MCU 임베디드 코딩과 그에 따른 개발용 보드 및 각종 윈도우 펌웨어 등 프로그램 소프트웨어 개발을 주로 하고 있다.
■ 박사 시절 개발 시행착오 에피소드가 있다고
원래 삼성전자 LTE 모뎀으로 FPGA를 십수년했다. 그러다 아날로그디바이스에서 모터제어를 맡게 됐는데, 그 분야를 모르니깐 성균관대 원충현 교수님 아래에서 연구를 하게 됐다.
근데 이거(모터)는 강전이다. 예전에는 아이솔레이션 개념이 없었다. 하다보니까 모터가 폭발하고 캐패시터 같은 것이 막 불꽃을 튀고, 이러다보니 오실로스코프 팁도 그냥 순간적으로 녹아서 굉장히 놀란 적이 많았다.
■ 모터 구동에 필요한 구성요소에 관해
아날로그디바이스 근무 당시 관련된 부품들을 많이 취급했다. MCU는 3볼트와 같이 저전압으로 작동하지만 모터는 굉장히 높은 전압으로 작동한다. 저전압과 고전압이 서로 공존하는 사이에서 신호를 잘 전달하기 위해서는 중간에 게이트 드라이버의 전용소자, 저전압이 고전압으로 넘어가지 못하도록 아이솔레이션을 시켜주는 칩라든지 모터가 돌아갈 때 위치나 속도를 센싱하는 각종 센싱 관련 앰프, ADC·DAC, 그걸 통합해 돌릴 수 있는 MCU 등 여러 전자 시스템이 복합적으로 구성돼 있다.
그러한 부품들에 대한 내용도 제 세미나에서 소개하게 될 것이다. 또한 MCU로 구동할 때 어떻게 프로그램을 코딩할 것인지, 구현 측면에서 주로 얘기가 이뤄질 예정이다.
■ 모터 시뮬레이션 추세에 대해
예전에는 모터를 돌리기 위해서는 여러 제어 방법이 있는데, 손으로 코딩을 해서 MCU에서 C언어로 짜서 돌리는 경우가 많았다. 전기자동차와 같은 트랙션(Traction, 구동) 모터를 돌릴 때 인간이 하다보니 실수를 할 수도 있다.
자동차가 오발진을 한다든지 이상한 현상이 발생하면 큰일이기 때문에 다른 분야와는 다르게 인명을 다루는 분야에서 안전과 검증, 인증은 자동차 쪽에서 굉장히 강하다고 알고 있다.
그래서 손으로 코딩하는 것보다는 전세계적으로 공인되고 인증된 매스웍스사에서 만든 Matlab이나 Simulink, Stateflow 등을 이용해 각종 모터 제어 알고리즘을 모델링한다. 이것을 시뮬레이션해 가상의 자동차를 만드는 것이다. 그런데 이 가상의 자동차가 실제 자동차와 거의 유사할 정도로 수학적으로 전체를 모델링한다.
어떠한 제어 이론을 부속품처럼 집어넣고 전체를 시뮬레이션 해 이것이 올바르게 돌아간다면 해당 알고리즘을 모델 원하는 밴더사의 MCU 코드로 변환시킬 수 있다. 예전처럼 실수가 발생하지 않도록 원천부터 차단하는 이런 시뮬레이션 툴이 요즘은 각 회사마다 사용하고, 선택이 아니라 필수가 되어 간다.
■ 개발 과정에서 유용한 툴 추천
많은 모터가 나오면서 안전규격이 되게 중요하다고 한다. 그런데 내가 만들 것을 안전 규격에 맞췄는지 아닌지 다 따져가면서 개발할 수는 없다.
이번 세미나에서 소개할 만한 툴 중에 MXAM이라고 있다. MCU에 넣고 둘리기 전에 Simulink 레벨에서도 모델 자체가 자동차 안전 규격에 적합한지 알려준다.
또 하나는 MCU로 코딩을 할 때 프로그램을 잘 잤는지 알기 위해 에뮬레이터에 올려서 브레이크 포인트를 찍고 디버깅을 한다. 그런데 문제는 모터 제어는 PMW 스위칭을 하기 때문에 브레이크 포인트를 찍고 값을 알기 위해 멈추는 순간 PWM에서 그것이 하이로 가면 쭉 하이로 가면서 결국 인버터가 폭발하는 수가 있다.
그러다보니 인버터뿐 아니라 전력변환 장치들은 PWM 스위칭에서 중간에 멈추면 안 된다. 그런데 현재 오동작을 하고 있고 이것을 알고 싶으면 실시간으로 자기가 만든 여러 데이터들, 다시 말해 C언어에 있는 여러 변수값들을 실시간으로 모니터링해야 된다. 그러면서도 동시에 동작하는 데 영향을 주지 않는, 그런 때에 사용하는 툴이 또 있다.
실시간으로 그것을 모니터링하고 잘못됐네 하고 값을 바꿔보기도 하고, 그것을 그래프화하고, 엑셀로 데이터를 뽑아서 볼 수도 있고, 로그 파일을 갖는 이런 도구들.
사실 이런 도구들 없이도 할 수는 있다. 그러나 제품은 타임투마켓이라고 제 시간에 제때 경쟁사에 밀리지 않고 성능 제대로 나오는 것을 만드는 것도 중요하다고 본다. 효과적인 툴이 있다면 그것을 소개 받아보고 한번 경험해보는 것도 나쁘지 않을 거라고 생각해 이번 세미나에 그런 것들을 좀 많이 첨가했다.
■ e4ds 모터제어 기술 컨퍼런스에서 다룰 내용에 대해
이번 세미나에서 저의 파트는 이택기 교수님께서 하는 기초적이고 튼튼한 여러 이론적인 측면을 기반으로 그대로 실습하는 시간이라고 생각하면 된다.
Simulink를 이용해서 예를 들어 DC모터다 그러면 DC모터에 대한 각종 수식을 Simulink에 어떻게 모델링하는지, PI 제어나 IP제어라든지 안티 와인드업 같은 것은 Simulink로 어떻게 모델링하는지, 그에 따른 결과는 어떻게 나오는지, 해당 코드를 인피니언이나 여타 MCU에 어떻게 타겟팅하는지, 그 모델을 여러 툴을 이용해 개발과정에서 안전 규격에 맞는지, 다운로딩했을 때 보드 상에서 실시간으로 내가 원하는 데이터로 가는지 모니터링하고 수정하는, 이런 것들을 실습 위주로 채워질 것으로 생각한다.
■ 독자 여러분께 한 말씀
모터를 하는 데 있어서 여러분이 접근하기 쉽도록, 이해하기 쉽도록 준비하는 과정 중에서 하나를 이번 소개해드리는 시간이 될 것이다. 여러분들께서 세미나를 들으시면 유익한 시간이 될 것이라고 생각한다. 세미나 시간에 뵙도록 하겠다.
감사합니다.