'Hardware'에 해당되는 글 222건

  1. 2017.07.09 Hardware | Arduino 의 Sensor Shield 사용해 보기
  2. 2017.07.08 Hardware | Arduino 로 Servo 를 움직여 보자
  3. 2017.07.07 Hardware | 삼성 USB 마우스 분해해 보기
  4. 2017.07.04 Hardware | 마이크로소프트 무선 마우스 4000 분해해보기
  5. 2017.07.03 Hardware | 금속탐지기를 조립해 보자
  6. 2017.06.28 Hardware | YF-S201 water flow sensor 가지고 놀기 4
  7. 2017.06.25 Hardware | Arduino 로 Photoresister 가지고 놀기 - 1
  8. 2017.06.23 Hardware | 인비오 IPC-7080 청소기
  9. 2017.06.20 Hardware | MeeGoPad 히트싱크 업그레이드 하기 - 2
  10. 2017.06.13 Hardware | AliExpress 에서 Memory 를 구입해보자

Hardware | Arduino 의 Sensor Shield 사용해 보기

|

1. 가위손

Arduino 를 하면서 빵판에 선을 꼽고 있으면 스파게티가 됩니다.


이를태면 이런거거죠.


- 출처 : http://anycpu.org/forum/viewtopic.php?t=143




2. Sensor Shield

하나의 Arduino nano 에 여러 센서들을 연결하게 되면, GND / 5V 를 여러 센서들이 공유해서 사용해야 해서

다음과 같은 문제가 발생할 수 있습니다.


- 선이 복잡해 진다

- 전원의 전압 강하될 가능성이 있다

- Arduino 의 전력부에 부하를 준다


등의 문제가 될 수 있겠습니다.


이를 해결하기 위한 쉴드가 다음 사진 입니다.



Arduino nano 전용 sheild 입니다.




3. 주문

Aliexpress 에서 주문합니다.


- URL : https://ko.aliexpress.com/item/For-Arduino-Nano-V3-0-Prototype-Shield-I-O-Extension-Board-Expansion-New-Module/32459623962.html




eBay 에서는 약 3~9 USD 정도 합니다.

그럼 Aliexpress 에서도 찾아 봅니다.


1.12 USD 에 무료 배송... 갓알리 입니다.




4. 도착

도착후 샷 입니다.

메뉴얼은 없고 단순히 보드 하나만 있습니다.



뒷면입니다.

Deek-Robot / DK-NANO-003 V3.0 이라고 적혀 있습니다.





5. 체결

결합전 샷 입니다.



합체 ~~!!!



전원 인가 모습.

잘 동작되는 것 같습니다.





6. 사양

Aliexpress 에서는 clone 제품을 많이 팔지만, 메뉴얼이나 자세한 설명은 없습니다.


어떤 전원을 꼽아야 하는지 알지 못하여 Googling 하였습니다.

완전히 같은 제품은 아니지만, 구성품이 거의 동일하여 동일한 사양일 듯 합니다.


Keyes - Funduino Uno and Nano Multi Purpose Shield V3.pdf




입력은 7~12V 사이가 적정하네요.




7. 연결해 보기

Servo 모터 두개를 달고 있는 Gimbal 미조립품이 있습니다.

이는 Kickstarter 에서 펀딩하고 받은 prototype 입니다.


- Servo 소개 글 : http://chocoball.tistory.com/entry/Hardware-Arduino-Servo


이 Gimbal 에는 두개의 Servo 모터가 들어갑니다.

각 Servo 모터는 5V / GND 와 digital pin 하나가 필요합니다.


이번에 구입한 Sensor Shield를 이용하여 간단하게 연결해 볼까요?



사진에서 보이듯, 각 signal pin 에 GND / 5V 핀이 바로 옆에 있어

배선이 깔끔해 집니다.


두개의 Servo 를 연결했을 때의 사진 입니다.

깔끔하죠?!!!



전원을 넣으면 각 pin 을 통해 5V 전원도 인가되고 GND 도 동작합니다.

그래서 각 센서에서 Arduino 의 5V / GND 에 따로 연결할 필요가 없습니다.


전원 인가하니 잘 동작 합니다.


동시에 두개의 Servo 를 구동시킨 동영상 입니다.



좋네요 !!!




FIN

OLDE / 여러 Sensor / Motor 등을 하나의 Arduino 로 제어하고 싶을 때, 배선이 깔끔해 지겠습니다.

다른것도 해봐야지.

And

Hardware | Arduino 로 Servo 를 움직여 보자

|

1. Servo

보통 전원만 들어오면 한쪽으로만 도는 모터도 있지만,

무선 조정 자동차 등에 들어가는 전자 제어식 모터가 있습니다.

이 모터는 각도 및 방향을 지정할 수 있습니다.


이런 모터 중 하나가 Servo 입니다.


제가 가지고 있는 것은 따로 구입한 것은 아니고,

Kickstarter 라는 클라우드 펀딩에서 Gimbal 장비로 소개된 프로젝트에 투자하여 받은 장비에 있는 것입니다.


아래는 그 Kickstarter 프로젝트 소개 입니다.


Gimbal for your Lights Camera or Action

https://www.kickstarter.com/projects/2035152529/gimbal-for-your-lights-camera-or-action?ref=user_menu


요런겁니다.



카메라나 전등을 붙이고 원격에서 그 방향을 조절할 수 있는 장치 입니다.

단, 받은 장비는 Hardware 만 있고 Software 는 자기가 만들어야 하는 제품입니다.




2. 부품

Gimbal 에 들어가는 부품은 Futaba 의 다음 두개 입니다.


- S3010


- S3114



이제 이런 부품의 생산도 중국이네요.




3. Layout

Pin 배열입니다.

   Servo  | Arduino Nano
-------------------------
   Black  |     GND
    Red   |     5V
   White  |     D9
-------------------------


아래와 같이 연결하면 됩니다.





4. Source

Arduino IDE 에서는 "<Servo.h>" 라는 라이브러리를 제공해 주고 있습니다.

그래서 control pin 정보와 움직이고 싶은 각도만 입력하면 그대로 동작해요.


참 편하죠?


#include "Servo.h"
 
Servo myservo; // create servo object to control a servo
 
void setup()
{
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object
}
    
void loop(){   
  myservo.write(0);     // sets the servo at 0 degree position
  delay(1000);          // waits for the servo to get there
  myservo.write(90);    // sets the servo at 90 degree position
  delay(1000);          // waits for the servo to get there
  myservo.write(180);   // sets the servo at 180 degree position
  delay(1000);          // waits for the servo to get there
  myservo.write(90);    // sets the servo at 90 degree position
  delay(1000);          // waits for the servo to get there
}





5. 결과

소스를 올리고 전원을 넣으면 다음과 같이 움직입니다.



감시 카메라를 올리고 사용하려면 좀더 디테일한 움직임을 보여야 하는데,

일단 동작만 확인합니다.


Servo도 step motor 의 일종일 터인데,

지원 라이브러리로 편하게 동작시킬 수 있는게 좋네요.




FIN

좀더 연구해봐야 겠습니다.

And

Hardware | 삼성 USB 마우스 분해해 보기

|

1. 친숙한 마우스

저번에 제조업의 Microsoft 가 만든 무선 마우스를 분해 해 봤습니다.


http://chocoball.tistory.com/entry/Hardware-Microsoft-wireless-mouse-4000


휠 고무가 녹아버린는 것 말고는 참 잘 만든 마우스였습니다.


그럼 다른 마우스들은 어떨까 하고 고장난 삼성 마우스를 분해해 보겠습니다.




2. 오늘의 주인공

고장나서 굴러다니던 삼성 USB 마우스 입니다.


가격 차이가 있어서 고가의 무선마우스와 단순비교는 의미가 없을 수도 있겠지만,

가격 차이가, 구조적으로 어떻게 차이를 나타내는지 보는것도 괜찮을것 같습니다.





3. 분해

분해는 간단 합니다.

우선 궁둥이쪽 나사를 하나 뺍니다.



많이 단순하네요.



분해는 이게 끝입니다.




4. 내부 부품

USB 케이블에 페라이트 코어가 있네요.

다른 이야기 이지만, 그 많은 페라이트 코어가 얼마나 효과가 좋은지는 모르겠어요.


휠을 누르면 눌리는 스위치와 좌우 스위치가 있습니다.


또한 휠 고정축에 휠을 이용해 스크롤을 감지해주는 노브가 있습니다.

최대한 구성을 간단하게 한 흔적이 옆보입니다.


콘덴서와 저항이 원가절감으로 빠져 있네요.


광원과 감지 센서가 나란히 있습니다.



기판을 붙잡고 있는 돌기를 제끼면 기판을 분리할 수 있습니다.

다만, 이 돌기는 강질이라서 힘을 많이 주면 부러져 버리네요.


수리를 전제로 만들어진 제품이 아니라는 것을 알 수 있습니다.

끼워 넣을때는 가능하지만 빼낼때는 부러지게 되어 있습니다.



광원의 수신 센서부 입니다.

광원을 반사시키는 프리즘 같은 투명 플라스틱은 그냥 걸처져 있습니다.



기판을 완전히 들어낸 사진 입니다.



USB에 연결하여 광원을 확인해 보았습니다.

이게 레이저인가 LED 인지 잘 모르겠습니다.


보기에는 고휘도 LED 인것 같이 보입니다.

부품 적출해서 가지고 놀면 되겠습니다.





FIN

다른 마우스들도 분해해 보고 싶네요.

And

Hardware | 마이크로소프트 무선 마우스 4000 분해해보기

|

1. 오늘의 주인공

Microsoft Wireless Mobile Mouse 4000 입니다.


사진에서 보이듯 휠 부분의 고무가 다 닳아 버렸습니다.

생산연도는 2012년 이라서, AS 좋기로 유명한 마소입니다만 너무 오래된 것이라 거부당하였습니다.


외관은 멀쩡하지만, 다른 좋은 마우스도 있기에 분해해 보기로 합니다.



제조업 회사인 Microsotf 가 만든 만큼 디자인도 그렇고 잘 만들었습니다.

고무휠 빼고....





2. 분해

일단 건전지와 WIFI USB 를 제거합니다.



뚜껑과 기판을 분리하는 첫 나사는,

아래 그림처럼 뒷쪽 마우스 패드 밑부분에 숨겨져 있습니다. 한참 찾았어요.


보통 큼지막한 스티커 뒤에 숨어 있어서, 손으로 눌러 살짝 들어가는 자리가 있어 스티커를 제거해 보니,

플라스틱 사출 흔적이었다는... 훼이크에 속았습니다.



첫 나사를 분리하면 이렇게 분리가 됩니다.



이제 뒷쪽의 걸쇄같이 생긴 부품을 동일한 힘을 주고 빼야 합니다.



꽤 짱짱하게 결합되어 있어서, 힘을 주지만 과하지 않게 하면서 뺴야 합니다.

저야 버릴꺼라 스크레치 신경쓰지 않으며, 뺀치로 과한 힘으로 뺐습니다. :-)



나사 머리가 검은색이라 눈에 잘 띄지는 않지만,

방금 분리한 부분의 두개 구멍에 보이는 나사를 분리해 줍니다.



짜잔~ 기판이 보이게 됩니다.

마우스가 간단한 기능처럼 보이지만, 꽉찬 기판과 부품을 볼 수 있습니다.

작은 공간에 최대한 때려 넣은 듯 느낌입니다.



레이저인지 고휘도 LED 인지, 빛을 쏴주는 곳과 굴절시키는 부품이 한뭉치로 되어 있습니다.



이제, 중간에 걸쳐 있는 휠 부붐을 잡아 뺍니다.

버릴꺼니 힘조절 같은 아량은 필요 없습니다.



역시 제조업 Microsoft. 험하게 분리해도 전혀 문제되지 않습니다.

사실 여기까지 하고 감탄했습니다. 잘 만들었습니다.



휠을 분리하고 기판을 고정하는 나사를 제거하면 완전히 분리 작업이 끝나게 됩니다.




3. 부품

이제부터는 부품 사진 입니다.


버릴 목적이기는 하나, 나중을 위해서 기판은 보관하려 합니다.

자잘한 부품이 많이 있습니다.


오른손용 마우스이긴 하지만, 왼손용으로도 할 수 있도록 엄지용 스위치가 양쪽에 달 수 있도록 되어 있습니다.



엄지용 버튼 부분입니다.



광원부 입니다.

한몸통으로 되어 있고, 별나사가 있어야 해서 놔둡니다.



뭔가 다른 기판들과 다르게 번쩍번쩍 합니다.


그렇습니다. "금도금" 으로 접점이 모두 이루어져 있습니다.

역시 제조업 Microsoft. 감탄이 나옵니다.


전원 스위치도 작아서 다른곳에 쓸만 할것 같습니다.


기판의 상면입니다.

사진상 밑부분은 안테나 패턴으로 보입니다.



역시, 접점은 금도금 입니다.




FIN

다른 마우스들도 궁금하네요.

And

Hardware | 금속탐지기를 조립해 보자

|

1. 해변

바다를 좋아하는 우리 가족은 일단 해변은 항상 가고싶은 장소이다.

금속 탐지기에 관한 Youtube 를 보면, 일단 해변이 나온다.


그렇다면, 나도 한번... 이라는 생각이 자연스럽게 들었다.


다만 여러가지 조사를 하는 과정에 만만치 않은 공부를 해야 하는 것을 알게 되었다.

또한 성능 좋은 금속 탐지기를 만들기 위해서는 그만큼 투자를 해야 하는 것도.


쉬운게 없습니다.

준비해야 할게 너무 많아 일단, 원리만 알고자 코일만 구입해 놓습니다.


https://ko.aliexpress.com/item/Newest-100m-Red-Magnet-Wire-Enameled-Copper-Wire-Roll-Magnetic-Round-Coil-0-2mm-Dia-Favorable/32716325725.html



도착은 했지만, 정작 시작을 못하고 있습니다.



생각보다 구리선이 가늡니다. 좀더 굵은게 더 성능이 좋을 듯 한데요.

고민에 빠집니다.




2. 엇?

기성품은 좋은 성능을 보여주는 대신 조금 많이 비쌉니다.

어떻게든 현실을 반영하여 DIY 쪽으로 마구마구 조사를 합니다.


마침 짱 성능 좋은 DIY 용품을 영국에서 판다고 하네요.

다만, 이것도 비쌉니다.


Arduino 를 이용하여 core coil 만 만들자고 계획을 세우던 와중에 아래 링크를 발견하게 됩니다.


https://ko.aliexpress.com/item/Metal-Detector-Scanner-Unassembled-Kit-Project-3-5V-DIY-Kit-Suite-Trousse-Boards-Module-Integrated-Circuits/32722475891.html



그 많은 고민들을 한방에 해결하는 DIY 제품이 있었네요.

고민하지 않고 바로 구입합니다. 항상 감사하는 무료 배송.




3. 도착

도착해서 구성품을 살펴 봅니다.

정말 간단합니다.



실패할 수도 있고, 백업용으로도 필요할 듯 하여 2개를 주문했습니다.

구성품은 정말 단촐합니다.



4. 조립

다른 전자 DIY 처럼 위치에 맞게 배치하고 납땜을 잘 하면 됩니다.

우선 알맞은 위치에 부품들을 끼워 주구요.



납땜하기 좋게 다리들을 벌려 줍니다.



전자 부품에 문제가 없는지 확인도 해 봅니다.

Tester 기도 좋지만, 저번에 만들어 놨던, Transister Tester 를 이용해 봅니다.

역시 여러 정보를 잡아 주네요.


Transister Tester 글은 다음을 참조하세요.

http://chocoball.tistory.com/entry/Hardware-Transistor-Tester


동봉된 캐페시터는 100㎌ 짜리가 92㎌ 정도 되니 그렇게 성능이 좋아 보이지는 않습니다.

그래도 싸고 간단한 맛에 하는 것이니 그냥 씁니다. 



실장을 모두 마쳤습니다.

부저와 콘덴서의 자리 간섭이 심하여 할수 없이 부저를 갸우뚱하게 납땜하였습니다.

그래도 문제는 없으니까요.



이쁘죠? 마음에 듭니다.



납땜이 끝난 뒷모습 입니다.



이제 + / - 리드선도 납땜해 줍니다.



전원 리드선은 밑으로 뽑는게 나을듯 하여 밑으로 뽑아 냈습니다.



동봉된 전원선이 너무 짧으니 연장선으로 쓸 마땅한 전선을 찾아 봅니다.

비행기 탔을 때 나누어 받았던 이어폰 줄을 사용해 보기로 합니다.


오늘의 희생양.



싹뚝 !!!



뜨헉 !!!

선이 얇고, 거기에 두가닥밖에 들어있지 않습니다.

그냥 나눠줄 만 하네요. 그나마 R/L 구분하기 위해 색이 입혀진 선이 있어서 2가닥 입니다.



다른 곳에서 USB 연장선을 잘라서 사용하도록 합니다. (사진 생략)

수축 튜브도 준비하고.



이쁘게 이어줍니다.



이제 전원을 연결해 줘야겠죠?

3V ~ 5V 로 구동되니, 1.5V 직렬로 연결해 주기 위해 건전지 2개를 이용합니다.



저번에 사 놨던 조그마한 스위치도 이용해 봅니다.

구입 URL 은 아래 입니다.

https://ko.aliexpress.com/item/10Pcs-Slide-Type-Switch-Module-1-Bit-2-54mm-1-Position-Way-DIP-Red-Pitch/32452842198.html



실제 모양은 다음과 같습니다.



한가지 단점은, 기판 위에 실장용이라서 전원선이나 건전지에 직접 납땜하려고 하면 잘 붙지 않습니다.

우선 작동 시험을 위해서 조립하고 있으므로, 절연테이프의 힘으로 꽁꽁 싸매어 고정해 줍니다.





5. 합체

이 금속 탐지기 본체만 가지고는 돌아다니면서 스켄할 수 없으므로, 편리한 도구가 없을까 주위를 살펴 봅니다.


올커니! 쓰지 않는 셀카봉!



요렇코롬 들어 있네요.



합체 준비 입니다.



짜잔~!!!

완성했습니다~!!!



이제 테스트, 테스트~!




6. 테스트

실내에서 동전을 마루에 깔고 테스트한 동영상 입니다.



잘 동작 합니다. 신기하기도 하네요.

중간에 잘 인식이 안되는 것은 건전지쪽에 붙여놓은 스위치 접점이 확실하게 고정이 안되어서 그렇습니다.

고정이 잘 되면 인식이 잘 됩니다.


완성된 후, 저녁밥 먹기 전에 아파트 놀이터 모래에서 시험해 봤습니다.

한 30분 했으나 득탬은 하지 못했습니다.


알고보니 며칠 전, 모래 검수 후 다 교체했다 하네요...




7. 개선

여기서 끝날 수는 없습니다.

아래는 향후 개선할 사항들 입니다.


1. 전원선의 길이를 길게 한다.

2. 전원은 micro USB 를 이용하여 충전할 수 있게 한다.

3. core coil 을 보강하여, 더 넓고 깊은 곳까지 스켄할 수 있게 한다.


위의 세가지를 보강하는 계획을 짜 봅니다.




FIN

아 즐거웠다.

보강 내용을 가지고 upgrade 해봐야겠습니다.


And

Hardware | YF-S201 water flow sensor 가지고 놀기

|

1. 이런 센서도 있네?

향후 집도 짓고 배관 시설도 공사도 해야 해서 "Water Flow Sensor" 를 익힐 필요가 있습니다.


...라는건 뻥이구요 (집 짓는게 장래 희망은 사실), Arduino 로 할 수 있는 센서는 어떤게 있을까 찾아 봤습니다.

"Water Flow Sensor" 라는게 있네요.


쓰임새는 액체가 흐르는 파이프에 설치하여 흐르는 양을 검출할 수 있는 센서 입니다.

요런거죠.





2. 구입

역시 Aliexpress 에서 구입 했습니다.

없는게 없죠?


https://ko.aliexpress.com/item/Water-flow-sensor-flowmeter-Hall-flow-sensor-Water-control-1-30L-min-2-0MPa-YF-S201/32583680601.html



3천원 미만으로 무료 배송이면 괜찮츄?




3. 도착 및 분해

도착 기념 샷 입니다.

구성은 단순하네요.



뒷면을 보니 흐르는 방향이 표시되어 있습니다.



내부가 궁금해 졌습니다.

나사 4개가 너무 눈에 띄게 만들어 졌네요. 분리해 봅니다.



물이 들어갈까봐 고무 패킹에 잘 둘러쌓여 있습니다.



호스 부분은 프로펠러가 달려 있어서 회전하게 되어 있습니다.

회전축에 자석같은게 붙어 있어서, 이 부분이 상판 회로의 센서와 hall effect 를 검출하는 것 같습니다.



상판 회로는 잘 분리되어 있습니다.




4. Layout

Pin 연결은 다음과 같습니다.


  YF-S201 | Arduino Nano
-------------------------
  Red     |      5V
  Black   |      GND
  Yellow  |      D2
-------------------------



Hall effect 를 이용한 센서라고 하는데, 전자기를 이용한 방식인 듯 합니다.

그래서 그런지 digital 단자와 연결됩니다.


Hall effect 는 다음 Wikipedia 를 참고해 보세요.

https://en.wikipedia.org/wiki/Hall_effect




5. Source

Code 는 다음과 같습니다.


출처는 아래 link 입니다.

https://diyhacking.com/arduino-flow-rate-sensor/

Code 소스는 아래 link 입니다.

http://diyhacking.com/projects/FlowMeterDIY.ino


/*
Liquid flow rate sensor -DIYhacking.com Arvind Sanjeev

Measure the liquid/water flow rate using this code. 
Connect Vcc and Gnd of sensor to arduino, and the 
signal line to arduino digital pin 2.
 
 */

byte statusLed    = 13;

byte sensorInterrupt = 0;  // 0 = digital pin 2
byte sensorPin       = 2;

// The hall-effect flow sensor outputs approximately 4.5 pulses per second per
// litre/minute of flow.
float calibrationFactor = 4.5;

volatile byte pulseCount;  

float flowRate;
unsigned int flowMilliLitres;
unsigned long totalMilliLitres;

unsigned long oldTime;

void setup()
{
  
  // Initialize a serial connection for reporting values to the host
  Serial.begin(38400);
   
  // Set up the status LED line as an output
  pinMode(statusLed, OUTPUT);
  digitalWrite(statusLed, HIGH);  // We have an active-low LED attached
  
  pinMode(sensorPin, INPUT);
  digitalWrite(sensorPin, HIGH);

  pulseCount        = 0;
  flowRate          = 0.0;
  flowMilliLitres   = 0;
  totalMilliLitres  = 0;
  oldTime           = 0;

  // The Hall-effect sensor is connected to pin 2 which uses interrupt 0.
  // Configured to trigger on a FALLING state change (transition from HIGH
  // state to LOW state)
  attachInterrupt(sensorInterrupt, pulseCounter, FALLING);
}

/**
 * Main program loop
 */
void loop()
{
   
   if((millis() - oldTime) > 1000)    // Only process counters once per second
  { 
    // Disable the interrupt while calculating flow rate and sending the value to
    // the host
    detachInterrupt(sensorInterrupt);
        
    // Because this loop may not complete in exactly 1 second intervals we calculate
    // the number of milliseconds that have passed since the last execution and use
    // that to scale the output. We also apply the calibrationFactor to scale the output
    // based on the number of pulses per second per units of measure (litres/minute in
    // this case) coming from the sensor.
    flowRate = ((1000.0 / (millis() - oldTime)) * pulseCount) / calibrationFactor;
    
    // Note the time this processing pass was executed. Note that because we've
    // disabled interrupts the millis() function won't actually be incrementing right
    // at this point, but it will still return the value it was set to just before
    // interrupts went away.
    oldTime = millis();
    
    // Divide the flow rate in litres/minute by 60 to determine how many litres have
    // passed through the sensor in this 1 second interval, then multiply by 1000 to
    // convert to millilitres.
    flowMilliLitres = (flowRate / 60) * 1000;
    
    // Add the millilitres passed in this second to the cumulative total
    totalMilliLitres += flowMilliLitres;
      
    unsigned int frac;
    
    // Print the flow rate for this second in litres / minute
    Serial.print("Flow rate: ");
    Serial.print(int(flowRate));  // Print the integer part of the variable
    Serial.print(".");             // Print the decimal point
    // Determine the fractional part. The 10 multiplier gives us 1 decimal place.
    frac = (flowRate - int(flowRate)) * 10;
    Serial.print(frac, DEC) ;      // Print the fractional part of the variable
    Serial.print("L/min");
    // Print the number of litres flowed in this second
    Serial.print("  Current Liquid Flowing: ");             // Output separator
    Serial.print(flowMilliLitres);
    Serial.print("mL/Sec");

    // Print the cumulative total of litres flowed since starting
    Serial.print("  Output Liquid Quantity: ");             // Output separator
    Serial.print(totalMilliLitres);
    Serial.println("mL"); 

    // Reset the pulse counter so we can start incrementing again
    pulseCount = 0;
    
    // Enable the interrupt again now that we've finished sending output
    attachInterrupt(sensorInterrupt, pulseCounter, FALLING);
  }
}

/*
Insterrupt Service Routine
 */
void pulseCounter()
{
  // Increment the pulse counter
  pulseCount++;
}



6. 측정

당장 물 호스를 연결할 수가 없어, 입으로 바람을 불어 봅니다.

잘 되네요 !!!



Serial Monitor 로 결과를 보면 아래와 같습니다.

신기하게 잘 잡힙니다.



Flow rate / 흐르는 양 / 총량을 계산해 줍니다.

원작자가 소스코드를 잘 짜신것 같습니다.




FIN

이제 집만 지으면 될 것 같습니다.

And

Hardware | Arduino 로 Photoresister 가지고 놀기 - 1

|

1. Photoresistor

광원을 받으면 저항값이 바뀌는 소자가 photo-resistor 입니다.

다른 말로는 Light Dependent Resisor (LDR) 이라고도 합니다.


빛을 받으면 저항값이 내려가고, 어두워지면 저항값이 올라가는 반응을 이용합니다.



보통, 어두워지면 자동으로 전기가 켜지는 가로등에 많이 쓰이고 있죠.



저번에 했던 motion sensor 에, 이 photoresistor 를 추가하여 개조하기 위해 구입해 봅니다.


http://chocoball.tistory.com/entry/Hardware-HCSR501-PIR-motion-sensor




2. 구입 및 도착

AliExpress 에서 "GL5528" 로 검색하면 보편적인 Photoresistor 가 검색됩니다.


https://ko.aliexpress.com/item/20Pcs-Photo-Light-Sensitive-Resistor-Photoresistor-5528-GL5528/1852500725.html



무료배송이 행복합니다.


배송까지 약 2주정도 걸렸습니다.

요즈음은 대략 2주정도 걸리는군요.



실물은 이렇게 생겼습니다.



구글에서 보던 줄이 더 촘촘하고 긴 모듈을 상상했으나,

조금 간단한 제품입니다.




3. Layout

Pin 연결은 다음과 같습니다.

특이한건, 저항과 Photoresistor 연결점을 A0 로 한다는 것 정도 입니다.


 Photoresistor | 
-------------------------------
      +        |      A0
      +        |   220 ohm (1)
      -        |      GND
-------------------------------

  220 ohm (1)  | 
-------------------------------
      +        | Photoresistor
      -        |      GND
-------------------------------

 
    LED    | 
----------------------------------
     +     |     D8
     -     |  220 ohm (2) -->  GND
----------------------------------




4. Code

Source code 입니다.


//photoresistor A Style Tech.

int Pr = 0; // will be used for analog 0.
int PrValue = 0; // value of output
int Pr_Input = 10; // value of when light is on

void setup() {
  Serial.begin(9600); //start serial Monitor
  pinMode(8, OUTPUT); // pin 8 as output
}

void loop() {
  PrValue = analogRead(Pr);
  Serial.println(PrValue); //prints photoresistor value
  delay(100); // value updated every 0.1 second.

  if (PrValue < Pr_Input) {
    digitalWrite(8, HIGH);
  } else {
    digitalWrite(8, LOW); }
}




5. 구동

구동 잘 되네요.



IDE의 Serial Monitor 로 확인해본 결과 입니다.

10 이하의 값이 나오는 경우는 손으로 photoresistor 를 막아서 빛을 못받게 하는 상황입니다.

이때 LED 가 켜지죠.



잘 되쥬?



나름 재미 있네요.




FIN

이제 뭘하지?

And

Hardware | 인비오 IPC-7080 청소기

|

1. 인비오 IPC-7080

INVIO IPC-7080 이라는 제품은 all round product 입니다.

라디오, CD 는 물론이고, 카세트 테이프도 됩니다.


또한 TV out 으로 DVD 플레이어도 내장되어 있습니다.

데이터는 메모리 카드를 통해서 MP3, VoD 파일을 재생할 수도 있습니다.


학습 기능으로 구간 반복도 가능합니다.

일단 소리를 내면서 기능하는 기능은 다 있는것 같아요.




2. 재앙

애들 친구가 놀러와서 오렌지 주스를 쏟을때 까지는 한동안 잘 썼습니다.

오랜지 주스를 쏟고는 닦을 수 없는 스프커 안쪽이나 기판에서 쇼트가 될까봐 걱정되어 전원을 키지 못했습니다.


그리고 시간이 지나고 산화 되면서 거무튀튀 해졌습니다.



저걸 어떻게 닦아 내지?

이음새 사이사이에 잘 흘러 들어 갔네요. ㅠㅠ



다행히 DVD 렌즈 부분은 무사하군요.

다만 그 주위가 흥건 했습니다.

휴지로 빨아 들인다 한들 한계가 있었습니다.



또한, 안테나도 부러졌습니다.



계속 방치하니 먼지도 같이 쌓여 갔습니다.





3. 분해 및 청소

안까지 침투한 오랜지 주스를 퇴치하기 위해서는 분해가 필수로 보였습니다.


본격적으로 분리를 시작합니다.

먼저 가장 먼저 보이는 밑바닥 나사부터 제거하기로 합니다.



친절하게 화살표 표식이 있습니다.

건전지 수납 공간 안에도 숨어 있으니 잘 찾아내어 제거합니다.



앞의 카세트 테이프 수납 커버를 빼야 합니다.



다행이 양쪽에 플라스틱 걸쇠만 살짝 눌러주면 분리됩니다.



왈라~. 이쁘게 분리되었습니다.

이렇게 되어야 세척이 쉬워지죠.



밑판의 나사를 모두 제거하면 아래와 같이 밑판을 들어 낼 수 있습니다.



완전히 분리하기 위해서는 보드에 연결된 모든 커넥터들을 제거해 줘야 합니다.

나중에 결합할 때, 헷갈리지 않도록 구석구석 사진으로 남겨 놓습니다.



커넥터를 제거하면 밑판이 완전히 분리가 됩니다.


이제 보드를 들어낼 차례 입니다.


안테나 선과 연결되어 있는 선은 유일하게 납땜이 되어 있습니다.

인두기로 납을 녹여서 선을 제거합니다.

조립할 때에는 다시 땜질해주면 되겠죠?



상판과 보드를 분리하기 위해 상판의 조작 페널과 연결된 커넥터들을 제거하기 시작합니다.

조립때를 위해서 하나하나 모두 사진으로 남겨 놓습니다.



컨트롤러 보드처럼 보이는 부분과 가장 많이 연결되어 있네요.



분리할 필요는 없는데, 컨트롤러 보드가 궁금하여 들어내 봅니다.



SANYO 라는 곳에 표시가 되어 있는것을 보면, 이 회사와 기술제휴나 제품 연계가 되어 있지 않나 싶습니다.



중요한 chip 중 하나는 TOSHIBA 네요.



안테나 뒷쪽의 코일 부분입니다.

뭔가 차폐를 위한 듯 보입니다만, 처음 보는 방식입니다.

살짝 건드려 보면 딱딱한 슬러시 같습니다.


코일 부분만 집중적으로 주입되어 있는걸 보면 어떤 작용을 하는 것은 확실해 보입니다.


처음에는 주스가 흘러들어가 고착화 된게 아닌가 했습니다만,

흘러들어간 자국이 없고, 여러 주위 chip 들과 엮여 있으나 전혀 간섭이 없어 보입니다.

그냥 놔두어야 할 것 같습니다.



이 부분도 제품 생산시 뿌려진 것으로 보입니다.



이 자국은 쥬스 자국입니닷!

잘 닦아 줍니다.



상판 컨트롤러 부에 있는 볼륨 조절과 주파수 조절 부분이 아래 처럼 가변 저항에 꽂혀 있습니다.

살살 움직이 가면서 제거되도록 합니다.



뜨헉 !!!

역시 보이지 않는 곳에도 뭍어 있네요.

잘 닦아 줍니다.



스피커를 보호하고 있는 외부 철망을 들어 내야 그 안쪽을 닦을 수 있습니다.

그러기 위해서는 이 부분의 고정 나사를 빼줘야 합니다.


나사를 빼 주어도 스피커와 고정 플라스틱이 몰딩같은 것으로 고정되어 있습니다.

사진에 보이는 바같이 생긴 고정 플라스틱을 잘 잡아 땡겨주면, 보호 철망을 구부려서 고정시킨 부분들에 접근이 가능합니다.

일자 드라이버같은 것으로 잘 펴줍니다.


이 부분은 작업이 힘들고 두손으로 해야 해서 사진이 없습니다.



짜잔~!

보호 철망을 분리하면 가장 심한 부분이 들어납니다.

이정도 일줄이야!



그 반대쪽은 더 심하네요.



스피커 콘 안쪽도 뭍었네요.

이 부분은 잘 지워지지 않았습니다. 모두 조립하면 잘 보이지 않을 뿐더러 기능에 지장이 없으니 어느정도 닦고 놔둡니다.

괜히 힘줘서 닦다가 예민한 콘이 망가질 수 있으니까요.



스피커 철망이 분리 되었으니,

세제를 풀어서 푹 담구어 줍니다. 검은색 코팅이 되어 있으니 힘주어서 닦으면 코팅이 벗겨져 버릴 수도 있으니까요.


보기만 해도 개운하네요.



가장 더러웠지만 접근 못했던 부분을 깨끗하게 닦았습니다.

아~~ 이 과정이 되기까지 오래 걸린 듯 합니다.



이제 그 외의 부분들도 구석구석 닦아줍니다.


컨트롤러가 있는 상판을 벗기면, 카세트 테이프 조절 버튼이 들어납니다.

열씸히 닦아 줍니다.



여기까지 오면 모든 부분이 닦였습니다.

조립은 분해의 역순, 처음 모습처럼 조립을 해 줍니다.




4. 안테나 수리

부러진 안테나 교환을 위해 AliExpress 를 뒤져 봅니다.

딱 라디오 안테나는 아니지만 BNC 로 연결된 안테나 부품이 적당해 보입니다.



주문을 넣고 잊을만 하니 도착했습니다.



BNC 부분만 빼면 정말 똑같군요.



나사를 푸니 이렇게 분리가 됩니다.

쉽게 교환할 수 있게 제작이 되어 있네요.



뾰롱~!

감쪽같이 교환하였습니다. 참 쉽죠?!





5. 작업 끝~

모든 과정을 마친 사진입니다.


완전 새것처럼 되었습니다!


뿌듯하네요.

모든 동작도 정상입니다. 소리도 더 좋아진것 같아요. (착각)



얼룩/먼지하나 없습니다.



안테나 사이즈도 딱 맞습니다.





FIN

이제 뭘 할까?

And

Hardware | MeeGoPad 히트싱크 업그레이드 하기 - 2

|

1. 시작

MeeGoPad T07 을 구입하여 용돈벌이 용으로 잘 사용하고 있었습니다.

지금까지의 과정은 다음 링크들에 있습니다.


* MeeGoPad T07 4GB

http://chocoball.tistory.com/entry/Hardware-MeeGoPad-T07-4G-RAM


* MeeGoPad T07 히트싱크 붙이기

http://chocoball.tistory.com/entry/Hardware-MeeGoPad-T07-heatsink


* MeeGoPad 히트싱크 업그레이드 하기

http://chocoball.tistory.com/entry/Hardware-MeeGoPad-heatsink-upgrade


쿨링의 마지막 버전이 무식한 서버 heat sink 를 10원짜리 동전으로 붙이는 것이였습니다만,

고정하는 고무줄이 결국 열과 장시간 사용으로 끊어집니다.

고정이 안되네요.


다른 방도가 필요합니다.


원래는 구리를 녹여서 casting 하여 케이스를 직접 제작하기로 결심하고 시작했습니다.

밑그림을 그리고 전제 과정을 세워 봅니다.




일단 틀을 짜야 해서 각 구성품의 칫수도 재고 크레이로 틀도 떠 봅니다.

틀을 뜨면 대용품을 만들어 거푸집 제작에 사용할 수 있으니까요.



사진에서 보이듯 너무 오래 놔뒀더니만, 크레이 수분이 받데리를 녹이는군요.



얼추 틀을 만들어 보려 했으나, 일이 점점 커저만 갑니다.

일단 아주 쎈 불을 지피고 작업할 수 있는 공간 (마당) 이 없습니다.


여기까지 인가...



2. 구리

케스팅을 이용한 구리 케이스 제작은 상황이 되면 진행하기로 합니다.

히트싱크 자체를 일단 바꾸는 것으로 선회.


열 전도에 있어서는 싼 가격의 금속중에서는 copper (구리) 가 단연 으뜸입니다.

접점이 잘 되지 않는 heat sink 를 붙이는 것 보단, 구리로 된 heat sink 를 잘 붙이는 것이 효율이 좋다고 생각합니다.


그래서 AliExpress 에서 적당한 크기의 heat sink 를 찾아봅니다.


CPU는 아래 사진의 제품이 맞는것 같습니다.

https://ko.aliexpress.com/item/Free-shipping-8pcs-lot-13x12x5mm-Copper-Heatsink-Ram-Memory-Heat-sinks-Cooling-Xbox-360VGA-DDR/32255697067.html



그 외에 컨트롤러로 보이는, CPU 가 장착된 다른 면에 있는 chip 열기도 뜨거워

이 부분도 식혀야 하는데, 크기가 작은 heat sink 만 가능할 것 같습니다.


아쉽게도 구리는 아니지만, 아래 제품이 적당한 듯 합니다.

https://ko.aliexpress.com/item/10-PCS-Newest-9mm-x-9mm-x-12mm-Extruded-Aluminum-Heatsink-Heat-Sink-Cooling-Radiator-Free/32376853169.html



이제 적당한 제품을 찾았으니 주문 합니다.

항상 그렇지만 정신을 차려보면 언제나 결제가 완료되어 있습니다.



3. 도착

약 3주정도 걸린것 같습니다.

예상했던 대로의 품질입니다.



구리 제품이라 뭉툭 하군요. 믿음이 갑니다.



한가지 아쉬운 점이라면, 접촉면이 써멀 테이프라는 것 정도.

구리스를 바르고 장착하면 효율이 좋겠지만, 어쩔 수 없습니다.


작은 heat sink 도 잘 도착했습니다.



이 친구는 알루미늄이군요.



마감은 나쁘지 않은것 같습니다.

이제 장착해봐야 겠죠?



4. 장착

우선 기존의 heat sink 와 써멀을 말끔히 제거합니다.



기존에 붙여 있던 써멀 패드도 제거해야겠죠?


CPU에 하나 붙여 봅니다.

꽤 있어 보이네요.

형상으로 봐선 Raspberry Pi 에도 잘 맞을 듯 합니다.



CPU 옆에 있는, 문제가 많은 eMMC 에도 붙여 줍니다.

그리고 메모리에서는 열이 많이 나지 않으므로, 아까운 copper 보다는 알루미늄 히트싱크를 붙여 줍니다.



이제 반대편도 붙여 줍니다.

반대편에도 메모리가 있고, 하나 떨어져 있는 chip 은 아마 컨트롤러 일 듯 합니다만,

이 친구가 CPU 다음으로 뜨겁습니다.



다만 아쉬운 것은 이 chip 은 크기가 작아 copper heat sink 가 맞지 않습니다.

아쉬운 대로 9mm 알루미늄 heat sink 를 붙여 줍니다.




5. 전체 샷

Full 장착된  전체 샷 입니다.



꽤 괜찮쥬?



무식한 heat sink 보다는 깔끔해 진것 같습니다.




6. 성능

아래가 AIDA64 결과 입니다.



변화가 전혀 없습니다!


망했네요

지금까지 가장 좋았던 성능은 server heat sink 를 직접 붙일 때 였던것 같습니다.


뭔가 근본적인 해결이 필요한 것 같습니다.



FIN

이제 뭐하지?

And

Hardware | AliExpress 에서 Memory 를 구입해보자

|

1. 필요하다

RAM이 필요했습니다.

그것도 딱 1GB DDR 400 PC 3200 이 4개.

이 사양은 거진 10년이 넘는 사양입니다.


공짜로 얻어걸린 PC 에 linux 를 깔고 서버 테스트를 하면 적당할 것 같아서였습니다.


뭐든지 나오는 사이트에서 검색해 보니, 개당 1만원이 넘는군요. (도둑ㄴ....)

수요는 조금씩 있지만, 생산이 안되어서 비싸지는것 같습니다.


고민하지 않고 AliExpress 를 검색해 봅니다.


오호이... 거의 6천원 무료배송에 판매하고 있습니다. (해당 제품은 판매 중단 되었으나 더 싸게 파는 입점도 있슴)

https://ko.aliexpress.com/item/New-1GB-DDR-400-PC-3200-400MHz-184PIN-Non-ECC-desktop-low-density-work-with-all/32658608038.html?isOrigTitle=true


정신을 차려보니 어느새 결제가 되어 있고, 배송중이라네요.




2. 도착

잘 포장되어서 왔습니다.



포장은 이 노란 봉투... 거의 한결같습니다.

내부 포장은 뽁뽁이로 잘 감싸져 있습니다.



메모리도 각각 플라스틱 케이스에 담겨져 왔습니다.

험하기로 유명한 알리 배송이라도 이정도면 문제 없겠네요. 받자 마자 별 5개를 투척합니다.



Kingstone 이라고 표시되어 있지만, 그런건 믿지 않기로 합니다.

도착 했으니 OS 를 깔기 전에 가혹한 메모리 테스트를 치뤄야 합니다.




3. 테스트

메모리 테스트는 닥지고 Memtest86+ 입니다.


취침 전 돌려놓고 일어나도 81%를 보이고 있습니다.

결국 100% 돌려서 확인한 결과 test 는 all pass 하였습니다.



지속적으로 가혹한 상황에서 사용한다면 어떻게 될 지 모르겠습니다만,

사용상 전혀 문제가 없을 것 같습니다.


그도 그럴 것이, DDR 400 이면 2000년도에 나온 메모리 입니다.

거의 17년 전...


카피품을 잘 만드는 중국 공장에서 17년동안 생산 했다면, 베테랑 할아버지가 되어 있을 것 같습니다.




FIN

이제 뭘하지?

And
prev | 1 | ··· | 17 | 18 | 19 | 20 | 21 | 22 | 23 | next