본문 바로가기

Theory/ControlTheory

Two-Rotor (VTOL) 시스템의 동역학 모델


Two-Rotor 시스템은 양익 비행체의 수직이착륙 동작(Vertical Take Off and Landing)을 동역학으로 모델링 한 것을 양익의 장착각도를 0로-즉, 양 날개가 동체에 수직으로 연결되어있다고 가정한 모델입니다. 위 그림에서 F1, F2가 두 로터가 내는 양력이 되고, theta는 기울어진 각도가 됩니다. 인가되는 힘은 총 3가지로서 위에 제시된것과 같습니다.


그 힘을을 수평방향, 기울어지는 각도, 동체 중심의 운동성분으로 각기 위와 같이 정리해볼 수 있습니다.


이를 x, y, theta에 관해 정리하면 위와같은 형태를 얻게 됩니다.


일반적인 시뮬레이션이라면, 다시 몇몇 파라미터를 간단히 두고 위와같이 표현할 수 있습니다. 실제 Two-Rotor는 딱 위의 동역학에 맞는 시스템을 실제로 만들어 내기가 어려우므로 그냥 시뮬레이션의 평이성을 위해 각 요소들을 적절히 맞춰서 위에서처럼 간단히 사용하면 되겠습니다.


위 그림을 MATLAB/Simulink로 시뮬레이션을 할 수 있도록 블럭을 꾸민것입니다.

TwoRotorModel.mdl


추후 다시 이야기 하겠지만, 입력 1,2는 동역학방정식에 제시된 u1, u2이고 c1,c2는 파라미터 불확실성을 고려해서 만든것이므로, 필요없을때는 그냥 '0'을 인가하면됩니다. 그 아래 x_r, y_r은 레퍼런스 신호를 인가하는 곳으로 레귤레이션 문제에서는 역시 '0'을 인가하면 되겠습니다.

반응형
  • 꼽사리 2013.06.23 12:49

    안녕하세요?
    동역학 모델링 유도하신거 따라가면서 하나하나 공부 중인데요...
    하나 궁금한게, ddot_y 우변에 F1-F2 가 어디서 온건지 쫌 막히는데요...
    직관적으로 생각해 보면, 중력에 대해 수직방향 가속도 성분이라면 F1+F2일 껏 같은데,
    혹시 오타가 아니면 제가 멀 잘 못 생각하고 있는건지, 확인차 여쭙습니다.

    • BlogIcon PinkWink 2013.06.24 10:04 신고

      네 안녕하세요
      오류가 맞네요.. 감사합니다.
      ddot_y쪽에 F1+F2여야합니다.
      그 아래 결과식은 u1=F1+F2로 두고
      ddot_y = u1..... 어쩌고로 제대로 표기가 되어있네요.

  • 꼽사리 2013.06.27 00:15

    안녕하세요,
    안해도 될 질문을 했던 것 같네요, 시야가 좁아서요... 밑으로 내려 와서 보니 바로 답이 있었군요...
    그런데, 또하나 궁금한거는 마지막 수식 정리하면서 ddot_y식의 마지막 항이, g가 1로 바뀐 이유는 머지요?

    • BlogIcon PinkWink 2013.06.27 08:51 신고

      본문 중간에 있지만,
      J, m, g 등등의 일반적 파라미터를 몰랐기 때문입니다.
      동역학을 유도한 후 경향을 보고, 또 제어기도 설계해야하는데
      실제 만들어진 기구부가 없기 때문에 파라미터들을 알 수가 없었죠.
      그래서 파라미터들을 임의로 잡은 겁니다.
      그래서 간략하게 대부분의 파라미터를 1로 본 것입니다.

  • 궁금한사람 2013.09.29 18:18

    안녕하세요. 내용이 정말 알차네요 ㅎ
    근데 궁금한게 잇습니다.

    마지막으로 정리된 식을 보면 ddot(x)=-u1sin세타 ddot(y)=u1cos세타-1 ddot(세타)=u2 이건데요.
    여기서 x, y 가 일반적으로 아는 x축 y축 좌표를 의미하는건가요???
    시뮬결과를 보면 초기값이 x=5, y=-5 인데 시간이 지나면 0으로 수렴하더라구요. 이 의미는 좌표상으로 (5,-5)에 잇다가 원점으로 돌아온다는 의미인가요???

    • BlogIcon PinkWink 2013.09.30 09:43 신고

      x,y는 절대좌표계에서의 좌표입니다.
      말씀하신데로 초기위치를 0이 아닌 곳으로 보고 제어기가 동작하면서 원점으로 이동하는 것이 시뮬레이션 결과입니다.

  • ryu 2017.01.29 02:08

    안녕하세요,
    죄송하지만 초면에 건방지다고 생각 하실 수 있겠지만, 전 꼭 이 분야에 대해서 공부를 해야 하는 상황이라서 이렇게 글을 쓰게 되었습니다.
    글을 쓰신 고수님 처럼 밸런싱 로봇, two rotor 같은 것에대한 동역학 유도를 하신 것을 보았는데 고수님처럼 무엇인가 설계 하고 분석 할 수 있도록 되려면 어떤 부분을 공부 해야 하는지, 출처를 알고 싶습니다. 저로서는 전자공학도 라서, 갈피를 잡지 못하겠습니다.

    • BlogIcon PinkWink 2017.01.30 09:13 신고

      저는 그냥 당시엔 논문을 보고 공부했습니다. 물론 학부과정에 정역학과 동역학 수업이 있었구요... 그상태에서 관련논문을 학습하면서 공부했습니다.^^

  • ryu 2017.01.29 02:27

    두번째 그림에 있는 기울어지는 각도(두번째 것)에 해당하는 공식에 있는 J가 무슨 뜻인지 잘 모르겠습니다.

  • Ryu 2017.01.30 22:29

    두번째 그림에 있는 기울어지는 각도(두번째 것)에 해당하는 공식에 있는 J가 무슨 뜻인지 잘 모르겠습니다. -> 이때 질문드렸던 공식 오른쪽 항에 있는 F1-F2의 이유를 잘 모르겠습니다. 양 변이 토크와 방향을 나타내는 느낌이 드는데

    • BlogIcon PinkWink 2017.01.31 05:54 신고

      두 로터의 양력이 달라야 two-rotor에서는 기울어짐이 발생합니다. 그래서 차이를 회전력을 일이키는 소스로 본것이구요.
      https://ko.wikipedia.org/wiki/%EA%B4%80%EC%84%B1_%EB%AA%A8%EB%A9%98%ED%8A%B8
      에 보시면 회전 모멘트에 대한 설명이 있습니다. 회전이 있는 모든 운동에는 J라고 표기되는 이너셔가 있습니다.