<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>NTREXGO - 디바이스마트, 엔티렉스 컨텐츠 통합 사이트 &#187; 펜들럼</title>
	<atom:link href="http://www.ntrexgo.com/archives/tag/%ed%8e%9c%eb%93%a4%eb%9f%bc/feed" rel="self" type="application/rss+xml" />
	<link>http://www.ntrexgo.com</link>
	<description>엔티렉스, 디바이스마트 컨텐츠 통합 사이트</description>
	<lastBuildDate>Thu, 03 Mar 2022 06:47:11 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>MoonWalker의 스크립트 기능을 이용한 역진자 제어</title>
		<link>http://www.ntrexgo.com/archives/16398</link>
		<comments>http://www.ntrexgo.com/archives/16398#comments</comments>
		<pubDate>Thu, 25 Jul 2013 10:16:27 +0000</pubDate>
		<dc:creator>NTRexLAB</dc:creator>
				<category><![CDATA[--MoonWalker Applications]]></category>
		<category><![CDATA[MoonWalker]]></category>
		<category><![CDATA[MW DCM02]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[모터]]></category>
		<category><![CDATA[스크립트]]></category>
		<category><![CDATA[제어기]]></category>
		<category><![CDATA[펜들럼]]></category>

		<guid isPermaLink="false">http://www.ntrexgo.com/?p=16398</guid>
		<description><![CDATA[
&#160;
위 사진에 이번에 출시 예정인 MoonWalker가 있습니다. 응? 근데 왜 펜들럼[바로가기]과 연결되어 있냐구요? 원래 모터 제어기를 펜들럼 같은 장비랑 물리면 하나의 보드가 더 필요합니다. 바로 펜들럼의 제어입력을 계산하기 위한 보드인데요. 저희가 이번에 야심차게 출시할 예정인 MoonWalker가 저 사진에는 딸랑&#8230; 딸랑 하나만 연결되어 있자나요? 이번글에서는 MoonWalker가 지원하는 아~주 많은 멋진 기능중에서 SCRIPT 언어에 대해 자랑하기 위해 저렇게 연결해 두었습니다.
이번 MoonWalker에는 바로 [바로가기]에서 언급했던 스크립트 기능이 포함되어 있습니다. 이 기능은 뭐 일종의 매크로 보다는 더 강력하다고 생각하시면 됩니다. 간단히(사실 좀 복잡해도 됩니다.^^) 몇몇 기능들을 조합해서 프로그램을 짜야하는데 그것때문에 모터 제어기와 함께 별도의 보드를 쓰기는 불편하자나요.
몇몇 예를 들어보죠.
히히&#8230; 과대 광고인가요? 아닙니다. 이제부터 보시면...]]></description>
				<content:encoded><![CDATA[<p><a href="http://www.ntrexgo.com/wp-content/uploads/2013/07/0014.jpg" rel="lightbox[16398]"><img class="alignnone size-large wp-image-16399" alt="001" src="http://www.ntrexgo.com/wp-content/uploads/2013/07/0014-620x501.jpg" width="620" height="501" /></a></p>
<p>&nbsp;</p>
<p>위 사진에 이번에 출시 예정인 MoonWalker가 있습니다. 응? 근데 왜 펜들럼[<a href="http://www.ntrexgo.com/archives/1656" target="_blank">바로가기</a>]과 연결되어 있냐구요? 원래 모터 제어기를 펜들럼 같은 장비랑 물리면 하나의 보드가 더 필요합니다. 바로 펜들럼의 제어입력을 계산하기 위한 보드인데요. 저희가 이번에 야심차게 출시할 예정인 MoonWalker가 저 사진에는 딸랑&#8230; 딸랑 하나만 연결되어 있자나요? 이번글에서는 MoonWalker가 지원하는 아~주 많은 멋진 기능중에서 SCRIPT 언어에 대해 자랑하기 위해 저렇게 연결해 두었습니다.</p>
<p>이번 MoonWalker에는 바로 [<a href="http://www.ntrexgo.com/archives/15341" target="_blank">바로가기</a>]에서 언급했던 스크립트 기능이 포함되어 있습니다. 이 기능은 뭐 일종의 매크로 보다는 더 강력하다고 생각하시면 됩니다. 간단히(사실 좀 복잡해도 됩니다.^^) 몇몇 기능들을 조합해서 프로그램을 짜야하는데 그것때문에 모터 제어기와 함께 별도의 보드를 쓰기는 불편하자나요.</p>
<p>몇몇 예를 들어보죠.</p>
<div class="symple-box green none" style="text-align:left; width:100%;"> 
<strong>상황1)</strong><br />
버튼 스위치를 이용해서 누를때마다 모터 RPM을 10씩 증가시키다가 50RPM이 되면 다시 10씩 감소하는 것을 계속하고 싶다. 이때, 모터의 RPM은 속도제어가 되어서 부하가 바뀌더라도 지령된 RPM을 잘 유지해야하며, 버튼을 1~3초안에 여러번 누르는 것은 오류로 보고 인식하지 않아야한다.<br />
</div>
<div class="symple-box red none" style="text-align:left; width:100%;"> 
<strong>상황1에 대한 기존의 방식)</strong><br />
1. 속도 제어가 잘 되는 모터 제어기를 모터와 엔코더와 연결한다.<br />
2. 별도이 MCU가 장착된 보드를 만들어서 버튼을 결선한다.<br />
3. 2에서 만든 MCU 보드에 모터 제어기를 연결한다.<br />
4. 아차~ 모터 제어기는 MCU와 통신으로 연결되는 방식이어야 한다.<br />
5. 더 슬픈건, MCU 보드에 프로그램을 컴파일 하기위해 잘 쓸일이 없는 컴파일러를 구해야하고<br />
6. 더더더 슬픈건, 이 컴파일러의 사용법 마저 익혀야한다&#8230;ㅠㅠ<br />
7. 그나마 다행인건, 난 C는 그래도 좀 할 줄 안다&#8230;ㅠㅠ<br />
</div>
<div class="symple-box blue none" style="text-align:left; width:100%;"> 
<strong>상황1에 대해 MoonWalker가 제시하는 솔루션)</strong><br />
1. 속도 제어가 잘 되는 모터 제어기는 MoonWalker이다.<br />
2. 별도이 MCU가 장착된 보드 따위 구할 생각하지 말고, 그냥 MoonWalker의 Digital Input 단자에 버튼을 연결한다.<br />
3. miniUSB단자에 USB케이블을 꼽고, 편하게 내 PC에 연결한다.<br />
4. 더 편한건, 제공되는 UI 컨트롤러 프로그램을 다운 받아서 실행하고 스크립트를 조건대로 작성한다.<br />
5. 그냥 실행한다.<br />
</div>
<div class="symple-box green none" style="text-align:left; width:100%;"> 
<strong>상황2)</strong><br />
난 제어를 공부하는 학생인데 교수님이 역진자 시스템을 제어해보라고 숙제를 줬다. 난 제어만 공부해서 MCU의 환경따위 구축할 줄 모른다.ㅠㅠ 그러나 역진자를 제어하기 위한 제어 알고리즘은 어떻게든 C 문법으로 작성할 수 있을 듯 하다.<br />
</div>
<div class="symple-box red none" style="text-align:left; width:100%;"> 
<strong>상황2에 대한 기존의 방식)</strong><br />
1. 역진자는 폴과 암으로 구성되어 있으니, 두 개의 엔코더를 받아들이고, 하나의 모터를 구동할 수 있는 2채널형 모터 제어기를 구한다.<br />
2. 모터 제어기만으로는 안된다. 별도의 보드를 가지고 역진자를 제어할 수 있는 코드를 작성할 수 있어야한다.<br />
3. 그나마 다행인건 C로는 역진자 제어 코드를 짤 수 있을 것 같다.<br />
4. 근데 젠장&#8230; 이놈의 MCU는 뭘 하지? DSP? CORTEX? 난 그냥 역진자만 간단히 제어할 수 있으면 좋겠다..ㅠㅠ<br />
</div>
<div class="symple-box blue none" style="text-align:left; width:100%;"> 
<strong>상황2에 대해 MoonWalker가 제시하는 솔루션)</strong><br />
<strong>1. 그냥 MoonWalker&#8230;. 하나면 된다.</strong><br />
</div>
<p>히히&#8230; 과대 광고인가요? 아닙니다. 이제부터 보시면 됩니다.</p>
<p>MoonWalker의 MW-MDC24D200D 모델은 2채널형 모델입니다. 즉, 구동하고 싶은 모터는 하나지만 엔코더를 읽어야하는게 두 개니 2채널형으로 선정합니다. 그리고 모터 연결, 엔코더 연결, 그리고 PC와 시리얼 통신을 연결합니다. 추가적인 보드 따위 필요없습니다. 그냥 MoonWalker면 됩니다^^</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2013/07/0021.jpg" rel="lightbox[16398]"><img class="alignnone size-full wp-image-16400 aligncenter" alt="002" src="http://www.ntrexgo.com/wp-content/uploads/2013/07/0021.jpg" width="437" height="605" /></a></p>
<p>그리고 살짝, 엔코더의 한 바퀴당 펄스 숫자를 저희가 제공해 드릴 모터 컨트롤 UI 프로그램을 통해 설정해 둡니다.</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2013/07/0031.jpg" rel="lightbox[16398]"><img class="alignnone size-large wp-image-16401 aligncenter" alt="003" src="http://www.ntrexgo.com/wp-content/uploads/2013/07/0031-620x394.jpg" width="620" height="394" /></a></p>
<p>그리고, 펜들럼을 제어하기 위한 코드를 짜서 넣어둡니다. 역진자는 처음보는분은 어려울 수도 있지만, 지금은 역진자 정도의 제어 조차도 저희 MoonWalker 모터 제어기에서 제공하는 스크립트 기능으로 구현할 수 있다는 걸 보여드리는 것입니다. 모터 제어기 내부의 변수들을 읽어와서 위치와 속도를 알고, 그걸 가지고</p>
<p><a href="http://www.ntrexgo.com/wp-content/uploads/2013/07/0041.jpg" rel="lightbox[16398]"><img class="alignnone size-large wp-image-16402 aligncenter" alt="004" src="http://www.ntrexgo.com/wp-content/uploads/2013/07/0041-620x391.jpg" width="620" height="391" /></a></p>
<p>제어 입력도 계산하는 것이 가능하다는 것입니다. 모터제어기 하나만 썼을 뿐인데 말이죠. 그리고, 저희 스크립트 기능은 문법은 C 문법을 따라가지만, 별도의 변수 선언 과정은 생략됩니다. 또하나더&#8230; 저희 MoonWalker의 스크립트는 사용하는 변수를 위 그림 우측처럼 실시간으로 관찰할 수 있게 해줍니다.^^</p>
<p>이제 펜들럼 기구부(모터 포함)와 모터제어기인 MoonWalker만 딱.. 사용해서 MoonWalker가 지원하는 스크립트로 코드를 작성하고, 펜들럼을 제어하는 것을 동영상으로 보시죠^^</p>
<p style="text-align: center">
<object width="560" height="315">
<param name="allowfullscreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="movie" value="http://www.youtube.com/v/FwhBZoX68SI?autoplay=0&loop=0&rel=0" />
<param name="wmode" value="transparent">
<embed src="http://www.youtube.com/v/FwhBZoX68SI?autoplay=0&loop=0&rel=0" type="application/x-shockwave-flash" wmode="transparent" allowfullscreen="true" allowscriptaccess="always" width="560" height="315">
</embed>
</object>


<p style="text-align: left">MoonWalker.. 기대되죠? Comming Soon&#8230; 입니다^^</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ntrexgo.com/archives/16398/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
