'아두이노/프로젝트&예제테스트'에 해당되는 글 40건

  1. 2013.04.24 아두이노 블루투스 탱크 #2 5
  2. 2013.04.17 아두이노 블루투스 탱크 #1
  3. 2013.04.11 코인 억셉터 (?) 분석
  4. 2013.03.21 안드로이드와 아두이노간의 시리얼 통신 10
  5. 2013.03.20 안드로이드로 아두이노의 전원공급

안녕하세요 시더입니다. 


오늘은 저번 포스트에 이어서 블루투스 탱크를 완성해 보았습니다.


만드는 중간에 몇가지 문제가 있긴 했지만 무난히 해결했죠. 일단 탱크를 위해서 구입한 물품들입니다. 


중앙에 모터 드라이버랑 오른쪽에 나노보드를 주력으로 사용했죠. 

블루투스는 기존에 구입한것을 활용 했습니다. (은근 비싸더라구요)



동작 테스트는 사진처럼 밑에 휴지심을 놓고 양쪽 모터의 앞뒤 회전 체크를 했습니다. 바닥에 놓고하면 돌아다녀서 

체크하기 힘들더라구요,



 

. 잘 보시면 이상한점이 있을텐데요. 바로 전원 공급 부분이 2군데 라는것.. 모터 드라이버 모듈 때문에 그렇습니다.  소모 전력이 상당히 크더라구요. 


나노보드를 통해서 넘겨받은 전류로는 동작되지 않고 자꾸 리셋되버리더라구요. 컴퓨터로 USB 꼽고 테스트할때는 겨우 동작이 되긴 하는데.. 모터의 속도가 좀 느립니다.


그래서 바로 모터드라이버에 9V를 연결하고 모터드라이버에서 5V를 출력하게 되있어서 그걸 나노보드로 끌어다 동작 시켰더니 잘 움직이네요. 


스마트폰 에서 블루투스를 통해서 컨트롤했는데.. 드리프트는 미리 동작 알고리즘을짜면 비슷하게 흉내는 낼수 있을것 같긴하네요. 블루투스의 데이터 전송속도와 모터드라이브까지 신호가 도달하는데 좀 딜래이가 생기니.. 그점 유의 하셔서 만들면 될것 같습니다.





Posted by 시더
,

안녕하세요 시더입니다.


이번에는 다소 유행이 지난 블루투스 탱크를 만들어 볼까 합니다.


준비물

아두이노 Uno->Nano (크기가 썩 맘에 들지 않더라구요.)

모터 드라이버

블루투스 모듈

스마트폰 - 컨트롤러

탱크 프라 모델   [약 2만원]

접착제 [약 천원]


바로 공동구매를 찾아 봤는데 공동구매 재고가 부족하다는 관계로 아두이노 관련 부품은 구매가 좀 늦어졌네요. 


일단 프라모델 탱크 구입.. 생각보다 쉽게 구할수 있구요. 2채널(바퀴 2개)짜리고 생각 보다 박스가 큽니다.



오픈 사진.. 저기 보이는 리모컨은 포장도 뜯을 필요가 없죠.



일단 하단부를 열심히 조립해 봅니다. 일단 동작부분은 하단부만 있어도 가능하니까요. 

참고로 접착제는 안에 없더라구요. 프라모델 살때 같이 사거나 편의점가서 순간 접착제를 사시면 됩니다.



문뜩 내부 크기가 얼마나 되나 궁금해서 Uno 보드를 넣어봤습니다. 딱 알맞는 사이즈네요 카페에서 추천해주는 이유를 알겠네요. 배터리도 무난하게 들어갑니다만.. 저는 좀더 내부를 활용해볼 예정이나 나노보드를 주문 했습니다.


다음 블로그는 공동구매 부품이 도착하는데로 완성해서 올려 보겠습니다.



Posted by 시더
,

안녕하세요 시더입니다.


오늘은 코인 억셉터 연구를 해볼려고 합니다. 


네? 코인 억셉터가 뭐냐구요? 음.. 그.. 인형뽑기 아시죠? 거기서 동전 넣는 부분입니다. 


즉, 이것이 동전인지 아닌지, 얼마짜린지 등을 판별하는 센서(?)라고 생각해 주시면 됩니다.


그런데 아X로X 사이트에 코인 억셉터가 하나 올려져 있더라구요. 가격은 역시나 부담되고(학생이 그렇죠) 


결정적인 부분은 외국 제품인데 국산 동전이 정확하게 센싱 될까? 하는 부분이죠.  그리고 12V로 동작.. 아두이노에서 


뽑아 내는 전압인 3.3V과 5V로는 동작 시킬 수 없으니 추가적인 전원 공급이 필요하죠. 아.. 머리가 복잡해집니다.


그래서 비스무리한것을 찾아 봤죠. (동전의 액수만 인삭할 수 있으면 된다!!)



인터넷에서 쉽게 구할수 있는 장난감... 동전 저금통입니다(중국산) 1원은 뭐지?응?


그럼 폭풍 분해 들어갑니다.




내용물은 요렇게 되있습니다. 아.. 빵판은 제외죠.. 5백원도 물론..



더 분해합니다. 이부분이 실질적으로 동전을 센싱하는 부분이죠.

네.. 위 사진과 같이 첨부해서 보시면 동전을 넣음으로써 밀려나간 거리만큼을 기준으로 해서 몇원짜리 동전이 통과 되었는지를 확인합니다. 사이즈 비슷한 철조각도 동전으로 인식하게 되겠네요.. 그래도 정상적인 동전의 금액은 생각보다 정확합니다.


3번 사진에 납땝작업을 해서 전선을 달아서 이것저것 테스트를 해봅니다. 몇가지 패턴이 있더라구요. 이것은 좀 시간을 들여서 기록해야할것 같네요. 이부분 분석이 끝나면 아두이노에 적용해볼 예정입니다. 




Posted by 시더
,

안녕하세요. 시더입니다. 


오늘은 다소 어렵지만 재밌는것을 해보려 합니다.


바로 안드로이드와 아두이노간의 시리얼 통신인데요.. 아이폰은 예전부터 지원됬으나 안드로이드는 지원이 된지


얼마 안된것으로 알고 있습니다. 


-준비물-

아두이노 Uno 

안드로이드 폰 (갤럭시 S3 테스트)

USB B타입 (F) to 마이크로B (M)  젠더나 케이블

기본 설정만 되어 있는 심플한 안드로이드 앱



그럼 시작하도록 하겠습니다.


가장 먼저 https://code.google.com/p/usb-serial-for-android/ 사이트에 접속해주세요.  들어가자 마자 반겨주는것


은 영어입니다. 다른 부분은 천천히 시간나면 읽어 보시구요. 우리는 빠른 진행을 위해서 ...Quick Start 을 읽어


줍니다.


Quick Start

1. Download usb-serial-for-android-v010.jar

// 저 jar 파일은 다운 받아주시구요.

2. Copy the jar to your Android project's libs/ directory. (See Android's FAQ for help).

// 여러분이 만든 안드로이드 프로젝트의 libs/ 디렉토리에 저장하세요.

3. Copy device_filter.xml to your project's res/xml/ directory.

// 그다음에 요 xml 파일은 다운받아서 res/xml/ 디렉토리에 저장하세요. 이 폴더는 기본 생성시 없으니 xml 폴더 추가해주시구요.

4. Configure your AndroidManifest.xml to notify your app when a device is attached (see Android USB Host documentation for help).

// 그리고 안드로이디 매니페스트.xml 파일에 해당 부분의 소스를 넣어줍니다.


<activity
   
android:name="..."
    ...
>
 
<intent-filter>
   
<action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
 
</intent-filter>
 
<meta-data
     
android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED"
     
android:resource="@xml/device_filter" />
</activity>

이 부분을 넣어 주시면 되는데요. 일단 간단하게 설명하자면.. 메인 엑티비티 부분에 저 부분을 넣어주면 됩니다.


5. Use it! Example code snippet:

// 밑의 소스를 사용하면 됩니다.

// Get UsbManager from Android.
UsbManager manager = (UsbManager) getSystemService(Context.USB_SERVICE);

// Find the first available driver.
UsbSerialDriver driver = UsbSerialProber.acquire(manager);

if (driver != null) {
  driver
.open();
 
try {
    driver
.setBaudRate(115200);
   
   
byte buffer[] = new byte[16];
   
int numBytesRead = driver.read(buffer, 1000);
   
Log.d(TAG, "Read " + numBytesRead + " bytes.");
 
} catch (IOException e) {
   
// Deal with error.
 
} finally {
    driver
.close();
 
}
}


위의 소스를 메인 엑티비티에서 적절히 넣고 활용해 주시면 됩니다. 간혹 driver 값을 인식이 잘 되지 않는경우가 있는 그럴 때는 아두이노 부분도 확인을 해보시는것이 좋습니다.


프로젝트 결과 화면





음.. 안드로이드 와 아두이노 두개의 연동이 이제 가능해 졌네요. 저 작은 부품(젠더)만 있으면 말이죠. 가격도 


비싸지 않은 편이라 부담없이 도전해볼만 하다고 생각합니다만 그.. 안드로이드가 익숙하지 않은 분들은 난이


도가 조금 높게 느껴지실 겁니다


p.s: https://code.google.com/p/usb-serial-for-android/ 주소에서  지원되는 usb 변환 칩과 지원가능한 기기 목록이 적혀있으니 이부분도 확인해보세요. 

Posted by 시더
,

안녕하세요 시더입니다. 오랜만에 포스팅을 하게 되네요.


날이 갈수록 바빠서 고민입니다. 남는건 없는데 시간만 쪼달리니 말이죠.


오늘은 아두이노 카페에서 눈팅을 하던중 재미있는 게시글을 보고 되었고 호기심에 실험을 해보았습니다.


그것은 바로 [스마트폰 전원으로 아두이노 동작] 입니다. 



솔찍히 처음 동영상 볼떄는 반신반의 했습니다. 스마트폰 전원으로 아두이노를 동작시킨다니... 의심이 많은 성격이


라.. 이론상 아두이노도 5V 동작이고 스마트폰도 5V 동작이니 될것 같긴 하지만.. 직접 해보지 않으면 못살죠. 


그리고 빠른 부품검색... 은 했으나 인터넷에선 usb B(F) to micro B(A) 케이블은결국 못찾았습니다. 찾으면 명탐정 


캐이블의 종류는 수도 없이 많은데.. 검색은 너무 힘들더라구요. 결국 젠더로 결정.. 이것은 비교적 쉽게 찾았습니다.


다른분들도 도움이 되고자 모델명 남깁니다 장사 아닙니다    [Coms USB 젠더 - Micro B(M)/A(F)]


그리고 결과 화면.. 소스를 올려서 동작시키지는 않았지만.. 아두이노에 전원 Led가 들어와 있는것을 볼 수 있습니다.


나름 신기하더라구요. 다음 포스트는 스마트폰과의 시리얼 통신을 작성해보도록 하겠습니다.






Posted by 시더
,