inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

PMSM 벡터제어 완전정복 - 이론, Matlab, STM32 실습까지!

a,b,c상 전류와 센서리스전환부의 소음

87

잠든꿀벌

작성한 질문수 12

0

제목 그대로 다른 RPM일때는 abc상 전류가 저렇게 안나타는데 300rpm일때만

image.png

이렇게 일자로 나오게 되더라고요

혹은 모터의 속도를 4000rpm->300(I/F) 구간 갈때도

이거는 혹시 문제가 되거나 수정을 할 필요가 있는 사항일까요?


추가로 I/F+센서리스(첨부해주신 코드)에서 500rpm(센서리스 전환부)

image.png

저는 딱히 건든게 없는데 어쩔 때는 조용히 돌다가 이렇게 갑자기 모터가 소음을 엄청 내면서 돌 떄가 있습니다. 딱히 특징이라고는 보면 EEMF가 채터링이 엄청 커졌다?


이것도 조언을 해주시면 감사하겠습니다.

stm32 motordriver

답변 2

0

제어쟁이

안녕하세요, 제어쟁이입니다.

우선 두가지 상황 모두 강의에서 사용한 코드로 실습하신거죠?

일단 첫번째 파형에서 I/F로 300RPM을 지령을 줬을 때 실제 회전을 하지 않는걸까요? 파형으로만 보면 정지된 상태에서 전류만 직류로 들어가고 있는 것으로 보이는데, 확인 부탁드립니다.

그리고 두번째 파형에서는 제어기 오차가 누적되면서 발산하는 현상으로 보이는데 제가 강의에서 사용한 모터와 동일한 모터를 사용하셨을까요? 그리고 간헐적으로 발생하는 현상인지 말씀 부탁드립니다.


1

잠든꿀벌

네 맞습니다. 모터는 계속 돌아가고 있어요

a,b,c상 전류만 저렇게 보이지 돌아가는 것만 육안으로 관찰하면 아무 문제 없어보여요

옙 강의에서 사용한 모터로 하고 있고 500rpm마다 매번 이렇게 됩니다.

이게 저도 원래 받은 코드를 그대로 썼을 때는 안그랬는데 어느순간부터 이 현상이 지속되더라고요. 커패시터랑 모터도 약간 뜨거워지는 느낌이 있는거 같습니다. 원래 코드에서 추가로 바꾼거라고는 UART 코드랑, config.h(전동킥 보드에서 수정하셨다는 코드)그거 밖에 없습니다ㅜ

1

제어쟁이

답변이 늦어서 죄송합니다 ㅠㅠ 알림을 놓쳤네요. 흠.. 제가 방금 테스트 하였는데 저는 그런 현상이 없습니다. 코드를 완전 원복하시고 구동하셔도 마찬가지이실까요?

0

잠든꿀벌

아 음...폴더 전체를 Import하니까 또 아무 문제 없이 되네요..(폴더 파일을 일일이 하나씩 넣었을 때는 잘 작동하지 않았어서 여쭤봤습니다)...이러면 제 센서리스 전환 부분이 문제가 되는 걸까요????

0

제어쟁이

네 아무래도 그럴 확률이 높아 보입니다. 우선 제 코드랑 하나씩 비교하시면서 어떤점이 다른지 확인해보셔야 될 것 같습니다.

1

잠든꿀벌

아 죄송합니다. 원본 코드도 config.h에서 전동킥보드용으로 바꿔서 다시 해보니 500에서만 진동과 소리가 엄청 일어나고 모터가 부르르 떨릴 정도입니다.(신기하게 딱 500에서만 그렇습니다, 이번에 해볼때는 UART도 추가안하고 온전히 원본 코드로 진행하였습니다.)

센서리스 전환은 잘 되구요...

파일은 PMSM_Final_v2.0을 사용했습니다.

image.pngimage.png


0

제어쟁이

제가 지금 출장을 나와있어서 이번주 내로 a키트로 한번 동일하게 테스트, 원인 파악 해보고 답변드리겠습니다.

혹시 인가하는 전류 크기를 2A로 키워서 500RPM으로 구동 해보시겠어요? 그리고 모터는 제가 권해드린 26W 모터 맞으실까요?

0

잠든꿀벌

넵. 감사합니다ㅠㅠ

BLDC모터 BL42S-24026N (26W-24V) 구매했습니다.


image.png

실험은 2A로 바꿔서 진행한 결과, 오히려 500rpm에서는 진동, 소리가 없어지고 100~400이 생겨났습니다(300,400구간이 가장 심한 걸 확인했습니다...)

0

제어쟁이

theta 지령의 ramp 기울기를 조금 낮춰서 모터를 가속 해보시겠어요? 그리고 전류제어가 해당 속도에서 잘 안되는 걸로 보이는데 전류 파형, 전류제어기 응답성 한번 확인 부탁드립니다.

0

잠든꿀벌

0.05로 낮춰고 전류도 1.5A로 낮춰서 해본 결과입니다.

image.png

Group 1 : IA, IB, IC

Group 2 : RpmRef, RpmRmp, RpmIF

Group 3 : RpmEEMF

Group 4 : IqrRef, IqrFdb

Group 5 : Mode, SpdFlg 입니다.

그래프 보시면 RpmRef = 500일 때 진동과 소리가 가장 심하고(여기서 EEMF가 요동 치는게 보입니다..) 거기서 400으로 내렸을 떄도 진동, 소리가 유지 되더라고요. 기울기를 내려도 결과는 비슷한거 같습니다. 센서리스 전환은 잘되구요..


참고로 이번에 찍은건 a,b,c상 전류가 직류가 안나타났지만 가끔씩 저혼자 직류를 막 내보낼 때도 있습니다.(어쩔 떄 직류를 내보내게 되는지 잘 모르겠습니다...)

0

제어쟁이

Mode가 ModeFlg일까요?

0

잠든꿀벌

넵 맞습니다!!

1

제어쟁이

네 그럼 I/F 제어 자체가 불안정 하다는건데.. 우선 제가 오늘 저녁에 동일하게 테스트해보고 답변 드리겠습니다.

0

잠든꿀벌

넵 너무 감사합니다....참고로 Intergrated_V3 코드를 가동해봤는데 이 코드를 가동해봤을 때는 그런 진동 없이 잘 작동하였습니다(하드웨어 문제인 줄 알고 테스트해보았습니다)

0

제어쟁이

image.pngimage.pngimage.png

제가 A키트로 동일하게 300RPM, 400RPM, 500RPM 강의자료의 코드 동일하게 사용해서 I/F 제어 수행하였는데 진동 없고, 전류 제어도 잘됩니다.

UART 통신관련 코드 다 빼고 제 강의 자료 코드를 아무것도 건드리지 않고 하셔도 모터 진동이 발생하는가요?

1

잠든꿀벌

넵 맞습니다.

혹시 몰라 gmail 쪽으로 영상 첨부하여 이메일 전송했습니다.

(200, 400, 500,400rpm순으로 실행시켰습니다)



확인 한번해주시면 감사하겠습니다...

0

제어쟁이

영상 확인하였는데 영상만 봐서는 판단하기가 힘드네요. ㅠ

그리고 기존 IIntergrated_V3 킥보드 코드에서는 전류제어를 하지 않으니 서로간의 비교를 하기에는 어려울 것 같습니다.

사실 저와 잠든꿀벌님와 동일한 키트와 코드를 사용했는데 구동이 안되는 이유는 하드웨어 문제라고 판단이 되네요.

전류 파형을 오실로스코프로 측정하기는 어려운 상황이실까요?

그리고 강의에서 theta를 0으로 두고 d축에 전류 인가하면서 예를 들어서 d축에 1A주면 a상 1A, b,c상에는 -0.5A씩 나오는 부분 설명 드렸는데, 이 부분 동일하게 해보시겠어요?

0

잠든꿀벌

image.png

코드를 약간 바꾸긴 했는데 어쨋든 d축에 1A 인가했을 때, b,c상이 약 -0.5A 나오는것 같습니다.(몇 강인지 기억이 안나서 임의로 조금 바꿨습니다)


흠,,사실 강의에서 전류 파형을 오실로스코프로 관측하는 걸 봤는데, 원래 저는 전압 측정 밖에 안해봤습니다. 그래서 사실 어딜 정확히 측정해야하는지(강의를 봐도 정확한 위치를 잘 모르겠습니다), 그리고 전류 프로브가 따로 필요하다고 하더라고요. 그래서 오실로스코프로 측정은 안해본 상태입니다.

0

제어쟁이

image.png

전류 프로브로 U,V,W 상중에 하나를 위 사진처럼 물려서 하면 측정 가능합니다. 혹시 프로브가 있으시면 측정 해보시면 좋을 것 같습니다.

일단 제가 봤을때는 하드웨어 문제로 판단이 됩니다. 근데 이걸 원격으로 하나씩 설명드리면서 하기가 어려우니 제 사무실로 보내주시면 확인 해보겠습니다.

제가 이메일로 주소 보내드릴께요.

0

잠든꿀벌

넵 감사합니다. 오늘 택배로 보내드렸습니다!

0

제어쟁이

잠든꿀벌님, 확인 해본 결과 이상 없어 보입니다. 이메일로 관련 내용 답변 드렸습니다.

확인부탁드립니다:)

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. 잠든꿀벌님.

BLDC 모터의 a,b,c상 전류센서리스 전환부의 소음에 대한 질문을 주셨네요. 모터 기술, 특히 센서리스 전환 시 RPM 변화와 소음을 줄이는 것은 중요한 문제입니다. 우선, 다음과 같은 가능성을 살펴보는 것이 좋을 것입니다:

a,b,c상 전류의 이상 현상 및 해결책

  1. 전환 시 불안정성:

    • 센서리스 전환 시에는 기존의 센서 데이터 (혹은 로직 기반 데이터)와 새로운 데이터 간의 전환이 매끄럽지 않으면 소음이 발생할 수 있습니다.
    • 해결책: 전환을 부드럽게 할 수 있도록 히스테리시스(hysteresis)를 적절히 설정하여 모드 전환의 안정성을 강화하세요.
  2. 시스템 불일치:

    • 특정 RPM에서 전류가 일관성 없게 보인다면 주파수 응답성 등에서 불일치를 의심해볼 수 있습니다.
    • 해결책: 시스템의 파라미터를 재점검하고, 제어 루프의 PID 계수를 재설정하여서 응답성을 개선할 수 있는지 시도해 보세요.
  3. 전달 함수 및 필터링:

    • 센서리스 모델이 극저속에서는 오동작하기 쉬운 경우가 있습니다. 특히, EEMF 신호에서의 채터링(chattering)이 심하다면 필터링이 필요할 수 있습니다.
    • 해결책: 저역 필터를 통해 Feedback 신호를 부드럽게 하여 채터링을 완화할 수 있습니다.

위 내용을 기반으로, 기존에 강의와 관련된 유사한 주제를 다루고 있는 질문과 답변을 확인하실 수 있습니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

위치 제어, 노션, AI 관련 문의

0

5

1

11챕터 노션설명자료는 원래 없는건가요?

0

31

1

B-저출력 보드 직접 수령 가능 여부 문의드립니다.

0

27

1

전환시 오버슈트

0

41

2

예제 코드 문의

0

71

2

I/F 제어 문의

0

55

1

RPM 문의

0

60

2

전압벡터이동 관측 문의

0

67

2

시뮬링크 문의

0

88

2

다이나모 문의

0

50

1

IPMSM 인덕턴스 측정 방법

0

76

2

커리큘럼 문의

0

52

2

기어비가 없는 무부하 모터의 I/F 제어 문의

0

57

2

대칭공간벡터변조 문의

0

60

2

SPWM 문의

0

53

2

STM32CubeIDE 버전 정보 문의

0

58

2

I/F 제어 d축정렬 질문

0

49

3

SPMSM 문의

0

62

3

자화 인덕턴스 변동분 문의

0

44

1

PMSM 블락파라미터 미지원

0

80

2

Hall 센서 + 센서리스

0

96

2

조언 부탁드립니다.

0

106

1

오실로스코프 측정

1

86

2

STM32CubeIDE Version 질문

0

96

2