가장 쓸모없는 장치

확실히 "가장 쓸모없는 장치"가 어떻게 생겼는지 보셨을 것입니다. 그렇지 않다면 작동 비디오를 시청해야 합니다. 잊을 수 없습니다!

재미있는 작은 것 :) 그리고 가장 중요한 것은 오랫동안 손님의 관심을 끌 수 있다는 것입니다.
일반적으로 자신의 손으로 만들고 싶은 것은 이런 종류의 흥미롭고 작은 것입니다.
그런 장치를 만드는 것은 어렵지 않다고 말해야겠습니다. 당신은 당신이 가지고 있는 것을 가지고 지낼 수 있습니다.

원리는 이렇습니다 전기 다이어그램가장 쓸모없는 장치:

기존 서보를 사용하여 스위치 푸셔를 구동할 수 있습니다. 게다가 "죽은" 서보도 가능합니다. 어쨌든 원래의 서보에서 모든 전자 장치를 제거하고 모터와 내장된 기어 감속기만 사용합니다.

또한 6핀 On-On 스위치와 마이크로스위치가 필요합니다. 그런데 후자는 일반적으로 컴퓨터 마우스의 키 입력에 사용됩니다.

이런 기계를 만들 때 가장 어려운 것이 몸체를 만드는 일이다. 개략적으로 작동하는 장치는 열가소성 수지로 만들어질 수 있습니다. 그런 다음 목재나 플라스틱으로 케이스를 쉽게 완성할 수 있습니다.

가장 쓸모없는 것을 만드는 방법에 대한 비디오 지침을 시청하세요. 이 지침은 이를 수행하는 방법과 어디에 무엇을 부착할지 보여줍니다.

제작된 장치는 첫 번째 영상만큼 아름답지는 않지만, 작동하고 원본만큼 쓸모가 없습니다 :)

파벨의 의견:

아 멋지다! 필요한 건 다 사러 갈게요)

안드레이 코멘트:

재미있는 수제 제품. 이런 것을 주는 것은 부끄러운 일이 아니며, 그로부터 많은 즐거움을 얻을 수 있습니다. 얼마나 많은지 누가 알겠습니까?

Arduino + 서보 2개 + 충전 보드 + 부스트 컨버터 보드 + 오래된 배터리 + 무선 부품 묶음 + 합판 조각 + 토글 스위치 = 바보의 꿈이 실현됩니다!
읽기를 좋아하는 사람들을 위한 많은 텍스트. 대각선으로 읽는 것을 좋아하는 분들을 위한 스포일러가 많습니다. 비디오를 사랑하는 사람들을 위한 비디오. 즉시 복사하고 "무릎을 꿇고" 달리고 싶은 사람들을 위한 스케치입니다. 사진, 사진, 사진. 고양이를 사랑하는 사람들을 위한 고양이.

실제로 면책 조항은 아닙니다.

깜박이는 LED, Hello world 등을 제외한 첫 번째 프로젝트입니다. 전통에 따르면 코드가 완벽하지 않은지 확인하고 이에 대한 분쟁에 반드시 참여하려면 먼저 머리에 재를 뿌려야합니다. 그리고 다른 프로젝트의 코드를 부분적으로 복사하는 경우에도 너무 세게 치지 않도록 부탁드립니다. 하지만 이런 일은 일어나지 않을 것입니다. 코드가 완벽해요! 효과가 있어서 마음에 들어서 직접 만들었습니다.
관심 있는 분들에게 조언을 드리고 싶습니다. 두려워하지 말고, 전투에 참여하고, 산더미 같은 코드를 삽질하고, 다양한 운영자로부터 자신만의 메가 피라미드를 구축하세요. 시간이 지남에 따라 스타일, 세련미, 이상이 올 것입니다.
컨트롤러의 메모리에 공간이 있는 한 아무것도 두렵지 않습니다. 벽에 부딪히면 최적화됩니다. 그리고 이것도 발전이다. 중요합니다.
C 프로그래밍에 관한 큰 책 - 예, 유용합니다. 그러나 처음에는 현재 사용 중인 명령에 대한 짧은 참조를 갖고 책갈피에 간단한 예제, 라이브러리 등 또는 동일한 Amperka 작업에 대한 여러 링크를 유지하는 것이 훨씬 더 유용합니다.
또한 흐름도는 나에게 많은 도움이 됩니다. 직사각형, 다이아몬드, 타원형. 당해본 사람은 다 이해합니다. 저는 지금 하나의 프로젝트를 진행하고 있습니다. 순서도 없이는 할 수 없습니다. 나에게는 프로그램의 전체 흐름을 더 명확하게 상상하기 위해 며칠 동안 그림을 그리는 것이 여러 코드를 적고 거기에 갇히는 것보다 종이에 다시 그리는 것이 더 낫습니다. 왜냐하면... 제한된 경험으로 인해 프로그래밍 생각의 힘으로 전체 코드를 다룰 수는 없습니다.
반복하고 싶거나 자신의 방식으로하고 싶은 분들을 위해 모든 질문에 답해 드리겠습니다.
나는 나의 글쓰기, 스타일, 디자인, 코드, 제품의 필요성 등에 관해 공허한 논쟁을 벌이지 않을 것입니다. 리뷰 중 심각한 실수를 한 부분이 있으면 수정하거나 추가하겠습니다.

"가장 쓸모없는 장치"가 무엇인지 Google에 검색해 보세요. 우연히 접하게 되었습니다. 이 코드는 기본으로 사용되었습니다. 저절로 시작되지는 않았고 나만의 스크립트를 만들고 싶었습니다.

서정적 여담

그들은 40대 이후, 특히 이미 40대가 넘었을 때 두뇌를 "유지"시키려고 노력해야 한다고 말합니다. 그리고 그 언어를 배우는 것이 최고의 워밍업입니다. 그리고 그 나이에만 그런 것이 아닙니다. 나는 언어에 능숙하지 않지만 건강 잡지에서 조언하는 것 같습니다... 일반적으로 나는 스스로 새로운 것을 배우기로 결정했습니다. 전자 제품은 대부분 잊어버렸지만 나에게 새로운 것이 아니지만 프로그래밍은 나에게 친숙한 적이 없습니다. 나는 그를 두려워했다. 그러나 여기에는 위에서부터 많은 징후가 일치했습니다. 새로운 것을 배울 것을 권장하는 잡지 "Health", (적어도 약간) 프로그래밍 (적어도 무언가)을 이해하려는 오랜 꿈, 게으른 사람 만이 말하지 않는 YouTube 1달러 1센트에 스마트피를 이용해 LED를 깜박이는 방법에 대해 알아봅니다.
이전에는 두 개의 트랜지스터, 커패시터 및 한 쌍의 저항을 사용하여 LED 깜박임을 꽤 잘 관리했지만 지금은 전혀 문제가 되지 않는다고 합니다. 그래서 당신은 추세에 있어야합니다.


나는 문자 그대로 장치라는 단어의 의미에서 이 쓸모없는 것을 정말 좋아했습니다. 나는 그것을 보고 사랑에 빠졌습니다. 나는 그것을 원한다, 그게 다야! 어린아이의 꿈처럼! 그러나 나이는 스스로 조정되었습니다. 사지 말고 직접 만들어보고 싶어요. 특히 세일중이라 간단한 장치. 나는 "지적인"것을 발견했지만 판매되는 것과 같은 것을 찾을 수 없었습니다. 게다가 꼭 해야 할 일!
그리고 또, 아두이노. 그리고 나는 그것에 대해 붐붐을 일으키지 않습니다. 그래서 우리는 그것을 알아내야 합니다. Aliexpress를 구출합니다. 저는 아두이노로 시작했습니다. 공부의 길은 험난하고 희생이 불가피하다는 것을 알았습니다. 그래서 다섯 가지 다른 것을 주문했습니다. 불타오르게 놔두세요. 회로 디버깅은 다른 판매자의 Uno에서 이루어졌습니다. 그런데 이 특정 보드가 최종 장치에 포함되어 있었기 때문에 제목에 포함되었습니다.
Arduino 외에도 Arduino 호환 및 Arduino에 가까운 모든 종류의 정크를 엄청난 양으로 주문했습니다. 여기서는 이 제품에서 무엇이 유용했는지에 대해서만 설명하겠습니다.

아두이노 프로 미니


배송은 빠르고, 내부 표면이 뾰족한 표준 정전기 방지 백과 봉투에 포장되어 있습니다. 판매자는 사교적이고 러시아어를 구사합니다.
328 칩에서. 3.3V, 8MHz. 왜 그럴까요? 네, 실수로요. 5볼트, 16MHz를 원했는데 이걸 샀어요. 내 잘못이야. 그러나 이 프로젝트에서는 이것이 중요하지 않습니다. 추가 전압 변환기를 설치했습니다. 그게 다야. 다른 미니와 큰 차이점은 못 느꼈습니다. 브랜드 차이는 블랙 텍스톨라이트(?) 입니다.잼중: RAW 핀이 보드에서 작동하지 않습니다. 하지만 그것도 멈추지 않았습니다. 하지만 3.3V 변환기를 사용하면 비용을 절약할 수 있습니다. 빗은 납땜되지 않습니다. 보드는 잘 만들어졌습니다.
왜 그렇게 짧은가요? 이 판매자와 그의 수수료에 대해 이미 편견이 있기 때문입니다(18항). 원하시는 분들은 쉽게 찾으실 수 있습니다. 그것을 다시 말할 필요가 없습니다. 나는 또한 그것에 대한 의견에 2센트를 추가했습니다. 그리고 판매자와 연락도 많이 했어요.


서보 드라이브 SG90


2개 로트당 $3.2입니다.
특별히 설명할 것은 없습니다. 이동 속도에 크게 의존하는 평균 위치 정확도를 가진 약한 서보 드라이브입니다. 그러나 그것은 싸다. 뚜껑 드라이브의 경우 - "손"의 경우 - 가능성이 직전입니다. 작동하려면 5V가 필요하지만 제어에는 3.3V이면 충분합니다. 나는 변환기를 통해 Arduino에서 직접 제어하려고 시도했지만 차이가 없습니다. 따라서 레벨 변환기는 비용을 절약했습니다.


충전 컨트롤러 및 전력 변환기


5개에 2.28달러. 보호 기능이 있습니다. 충전 중에는 빨간색 LED가 켜지고, 충전이 완료되면 파란색 LED가 켜집니다. 여기에 리뷰가 있었습니다.


각각 $0.50. 다만 배송비는 착불인데, 이 가게에서 다른 물건도 잔뜩 사서 배송이 불편하진 않았어요. 무게를 줄이기 위해 USB 소켓을 제거했습니다.))) 출력은 5.12V를 생성합니다.





오프라인으로 가져왔습니다. 조금 꽉. 서보 작동을 용이하게하기 위해 서보를 분해하거나 스프링을 줄이거 나 더 약한 것으로 교체하는 것이 가능했습니다. 그러나 게으름이 승리했습니다. 이렇게 넣었습니다. 사실, 고속에서 서보의 회전 각도에 대한 코드 첨가제를 작성해야 했습니다.


TTL 변환기


개당 1.5달러. 사실 제가 먼저 주문했어요. 절반 가격이에요. 그러나 그는 이상한 이유로 영웅적인 죽음을 맞이했습니다. 나는 아직도 내가 어떻게 그를 죽였는 지 이해하지 못합니다. 이러한 이유로 프로젝트는 새롭고 더 발전된 프로젝트가 도착할 때까지 한 달 동안 중단되었습니다. 재설정을 누를 필요가 없습니다. 이게 진전이 아닌가?


나머지는 저장소에서 가져온 것입니다.

TO220 하우징의 전압 조정기 1117T-3.3V, 커패시터 1500.0x6.3 및 470.0x16, 0.1μF 커패시터 2개, 어린이용 자동차의 백색 LED 및 마이크로 스위치, 220Ω 저항. 배터리는 몇 년 동안 사용하지 않은 채 방치되어 있었습니다. 한번은 불에 탄(문자 그대로) 휴대용 DVD 플레이어를 분해한 적이 있습니다. 유일한 좋은 점은 살아남은 배터리였습니다. 여기에 유용했던 것 중 하나가 있습니다. 전압 3.7V, 라벨에서 용량을 찾지 못했습니다.
글루건, 돈을 위한 신축성 밴드, 브라의 고리 2개(아내 덕분에. 달링, 사랑해요!), 가구 다웰 2개, 나사 4개, 가구 문용 접착 범퍼 4개, 브레드보드 조각, 전선, 커넥터.


선체의 상황은 더 복잡했습니다. 많은 상자가 시도되었습니다. Tissot 시계의 플라스틱 상자는 깨지기 쉬운 것으로 밝혀졌으며 부분적으로는 판지였습니다. 그러나 그것의 금속 커튼이 나타났습니다. 재고도 한개 남아있습니다. 기성품 향수 케이스, 와인 상자, 사탕 상자를 사용해 보았습니다. 결국 제가 직접 하기로 결정했습니다.
자작나무로 추정되는 고품질 합판이 어린이용 불타는 세트에서 발견되었습니다. 아이가 자랐습니다. 세트가 남아 있습니다. 한쪽에는 그림이 그려져 있었지만 반대편에는 직설적으로 말하자면 훌륭하다

간단히 말해서, 훌륭해요

학교에는 Trudovik이있었습니다. 늙은. 일반적으로 그는 훌륭한 사람입니다. 그는 존경 받았습니다. 우리가 전기를 다룰 때 배터리, 전구, 열쇠를 예로 들어 강의를 해주셨습니다.
“배터리에 전류가 흐르고 있습니다. 이제 그는 양극에서 나와 전선을 따라갑니다. 간다, 간다, 갑자기 빵-열쇠가 오는 중입니다. 그리고 열쇠는 열려있습니다. Tok은 더 이상 갈 곳이 없다는 것을 이해합니다. 그는 돌아 서서 배터리 안으로 들어갔다. 그리고 불이 켜지지 않습니다. 우리는 열쇠를 닫습니다. 전류가 다시 흐르기 시작하여 키에 도달하고 이를 통과하여 전구를 통과하여 배터리로 돌아갔습니다. 그리고 솔직하게 말하면 전구가 완벽하게 켜져 있습니다.” 그 이후로 어휘집에는 예기치 않게 성공한 일의 동의어와 같은 문구가 있습니다.




쇠톱과 퍼즐로 합판을 자르려고 했는데 잘 안 됐어요. 제거하기 어려운 칩과 고르지 못한 가장자리. 나는 탈출구를 찾았습니다. 날카로운 문구용 칼이었습니다. 한쪽은 합판의 절반, 다른 쪽은 절반을 자릅니다. 그런 다음 약간의 샌딩을 수행하면 모든 것이 정상입니다. 그러나 좋은 금속 자와 끊임없이 날카로운 칼날을 사용하면 완벽한 절단과 직선을 얻을 수 있습니다.
물론 결함이 없는 것은 아닙니다. 손으로 만든 스티커 아래에는 평범한 구멍이 숨겨져 있습니다. 토글 스위치를 위해 중앙에 구멍을 뚫었습니다. 하지만 서보가 맞지 않았습니다. 토글 스위치를 옆으로 옮기고 구멍을 막아야 했습니다. 그런 어려움은 나를 두렵게 하지 않습니다.
장치를 만드는 데 관련된 모든 재채기를 설명하는 것이 요점을 모르겠습니다. 몇 가지 사항을 설명하겠습니다. 그리고 손 있는 사람은 그렇게 하십시오.
핫멜트 접착제를 사용하여 상자를 조립했습니다. 나는 접착제 자체를 아끼지 않았습니다. 완벽하게 유지됩니다. 삐걱거리지도 않고 놀지도 않습니다. 빠르고 저렴하며 쾌활합니다. 그리고 일반적으로 아시다시피 거의 모든 것이 이 접착제로 고정되어 있습니다. 추천합니다. 조립 과정의 속도가 크게 향상됩니다. 스위치 끄기 마이크를 안쪽에서 왼쪽 벽에 붙였습니다. 사진에서 조금 볼 수 있습니다.
뚜껑은 커튼에 부착되었습니다.

나는 베일로 인해 고통을 겪었습니다. 나는 많은 것을 실험했다. 나는 뚜껑이 상자 내부가 아닌 상단에 위치하길 원했습니다. 종이 클립으로 여러 버전의 스테이플 커튼을 구부리기까지 했습니다. 포는 나중에 실험 중에 티쏘 시계 상자의 커튼이 그의 눈길을 끌었다는 것을 기억했습니다. 정말 좋아요, 스위스(중국?).
베일은 중요한 것입니다. 그 품질은 장치의 전반적인 외부 아름다움에 매우 중요합니다.
메인 토글 스위치는 더 부드러워야 작동이 더 쉬워집니다.
뚜껑은 탄성 밴드에 의해 닫힌 위치로 돌아갑니다. 매우 단단하게 선택할 필요는 없습니다. 서보가 이를 처리하지만 커튼이 중앙에 있으면 뚜껑이 휘어집니다.
합판의 경우 광택 처리가 필수입니다. 매우 더러워집니다. 저는 투명차폰바니쉬를 사용했어요. 왜냐하면 손에 다른 사람이 없었기 때문입니다.
"손"을 제어하는 ​​서보를 다르게 배치하는 것이 좋습니다. 측면이 아니라 토글 스위치 앞에 있습니다. 그러면 "암"은 U자형 대신 L자형으로 제조하기가 더 간단할 수 있습니다. 상자의 너비를 줄일 수 있고 토글 스위치를 중앙에 배치할 수 있습니다.
뚜껑 서보를 180도 회전시키는 것이 더 좋습니다. 그러면 코드에서 이 서보의 각도를 뚜껑 작동과 연관시키는 것이 더 쉬울 것입니다. 나에게는 그 반대이므로 개방은 정도가 감소하는 것을 의미합니다. 그러나 "손"의 경우에는 그 반대입니다. 그리고 고무줄이 당겨지는 쪽과 같은 쪽에서 뚜껑을 밀어내는 것이 더 정확합니다.
상자를 너무 작게 만들어서는 안됩니다. 사용하기 편리하지 않을 것입니다. 그러나 더 평평한 것이 허용됩니다. 상자는 가볍고 평평하면 더 안정적입니다. 상자를 잡지 않고 손가락으로 토글 스위치를 누르는 것이 더 편리할 것입니다.
나는 브레드보드 두 조각으로 방패 같은 것을 만들었습니다. 커넥터 없이 Arduino에 납땜되었습니다. 단단히. 나는 상관하지 않는다.


하지만 모든 주변 장치를 커넥터로 만들었습니다. 더 편안합니다.
Arduino(3.3V)에 전원을 공급하려면 대형 커패시터가 필요합니다. 그것이 없으면 Arduino가 중단됩니다.
장치의 조립 도면이 없습니다. 너무 간단해서 다른 것들도 많이 사용할 수 있어요 간단한 솔루션, 모든 메커니즘의 기반입니다. 비디오에서 광산 및 기타 유사한 장치 모두에서 사용된 드라이브 옵션을 볼 수 있습니다.

#포함하다 #포함하다 서보 도어서보; //서보 드라이브 커버 Servo handServo; // 서보 바운스 바운서 = Bounce(12, 40); //토글 스위치의 핀 12에 대한 Bounce 클래스의 인스턴스를 생성합니다. int pos = 0; //시작 위치 변수 int pos1door = 70; //뚜껑 서보의 초기 위치 int pos2door = 30; //커버 서보의 최종 위치 int pos1hand = 10; //핸드 서보의 초기 위치 int pos2hand = 160; //팔 서보의 최종 위치 int r; //토글 스위치를 끄는 옵션에 따라 달라지는 임의의 숫자 #define LED_PIN 11 // LED에 연결된 출력 번호 int ledState = LOW; // 이 변수를 사용하여 LED 상태를 설정합니다. long PreviousMillis = 0; // LED의 마지막 전환 시간을 저장합니다. #define INTERVAL 30UL // LED를 켜고 끄는 간격 void setup() ( pinMode(LED_PIN, OUTPUT); pinMode(12, INPUT); // 핀 12 전환 입력 모드 digitalWrite(12, 1); //풀업 저항을 켭니다. Serial.begin(9600); //포트를 9600bps 속도로 설정합니다. 디버깅을 위해. 그런 다음 제거할 수 있습니다. doorServo .attach(9); //뚜껑 서보를 핀 9에 할당 handServo.attach(10); //핸드 서보를 핀 10에 할당 doorServo.write(pos1door); //뚜껑 서보를 초기 위치인 handServo로 설정합니다. write(pos1hand); //핸드 서보를 초기 위치로 설정 ) void loop() ( if (bouncer.update()) ( if (bouncer.read()==0) ( //버튼을 누른 경우 ( r = 무작위(0,11); // jn 0 ~ 10의 난수 생성 Serial.println® ; if (r == 0) ( move_0(); ) //함수 호출 난수 else if (r == 1) ( move_1(); ) else if (r == 2) ( move_2(); ) else if (r == 3) ( move_3(); ) else if (r == 4) ( move_4(); ) else if (r == 5) ( move_5(); ) else if (r == 6) ( move_0(); ) else if (r == 7) ( move_1(); ) else if (r == 8) ( move_4(); ) else if (r == 9) ( move_3(); ) else if (r == 10) ( move_0(); ) ) ) ) // 함수 라이브러리. 일반 원칙: 뚜껑 열기 - 손을 내밀고 토글 스위치 끄기 - 손 빼기 - 뚜껑 닫기 // 아름답게 장식하는 방법에 대한 옵션이 있습니다........... 무효 move_0())( //간단한 옵션: 열기-끄기-닫기 //뚜껑 열기 for(pos = pos1door; pos >= pos2door; pos -=3) ( doorServo.write(pos); 지연(15) ; ) //손을 내밀어 for(pos = pos1hand ;pos<= pos2hand; pos +=3) { handServo.write(pos); delay(15); } //убираем руку for(pos = pos2hand; pos >= pos1손; pos -=3) ( handServo.write(pos); Delay(15); ) //뚜껑을 닫습니다 for(pos = pos2door; pos<= pos1door; pos +=3) { doorServo.write(pos); delay(15); } } void move_1(){ //простой вариант 2: открыли-выключили-закрыли //открываем крышку for(pos = pos1door; pos >= pos2door; pos -=1) ( doorServo.write(pos); 지연(15); ) 지연(1000); //손을 내밀어 for(pos = pos1hand; pos<= pos2hand; pos +=1) { handServo.write(pos); delay(15); } //убираем руку for(pos = pos2hand; pos > <= pos1door; pos +=5) { doorServo.write(pos); delay(15); } } void move_2(){ //задумчивый вариант 2: приоткрыли-закрыли-открыли-выключили-закрыли //открываем крышку for(pos = pos1door; pos >= pos2도어+15; pos -=5) ( doorServo.write(pos); 지연(15); ) 지연(1000); //뚜껑을 닫습니다 for(pos = pos2door+15; pos<= pos1door; pos +=5) { doorServo.write(pos); delay(15); } delay(1000); //открываем крышку for(pos = pos1door; pos > <= pos2hand+2; pos +=5) { handServo.write(pos); delay(15); } //убираем руку for(pos = pos2hand+2; pos >= pos1손; pos -=5) ( handServo.write(pos); 지연(15); ) //뚜껑을 닫습니다 for(pos = pos2door; pos<= pos1door; pos +=5) { doorServo.write(pos); delay(15); } } void move_3(){ //дерганый вариант: приоткрыли-подергали - закрыли-открыли-выключили-закрыли //открываем крышку for(pos = pos1door; pos >= pos2도어+15; pos -=1) ( doorServo.write(pos); 지연(50); ) 지연(500); //뚜껑을 당깁니다 for(int i=1; i<=8; i ++) { doorServo.write(pos2door+18); delay(80); doorServo.write(pos2door+15); delay(80); static unsigned long previousMillis = 0; if(millis() - previousMillis >간격) ( 이전Millis = millis(); digitalWrite(LED_PIN,!digitalRead(LED_PIN)); ) ) 지연(500); //뚜껑을 닫습니다 for(pos = pos2door+15; pos<= pos1door; pos +=1) { doorServo.write(pos); delay(50); } delay(1000); //открываем крышку for(pos = pos1door; pos >= pos2door; pos -=5) ( doorServo.write(pos); 지연(15); ) //손을 내밀어 for(pos = pos1hand; pos<= pos2hand+2; pos +=5) { handServo.write(pos); delay(15); } //убираем руку for(pos = pos2hand+2; pos >= pos1손; pos -=5) ( handServo.write(pos); 지연(15); ) //뚜껑을 닫습니다 for(pos = pos2door; pos<= pos1door; pos +=5) { doorServo.write(pos); delay(15); } } void move_4(){ //открываем крышку delay(2000); for(pos = pos1door; pos >= pos2도어+15; pos -=5) ( doorServo.write(pos); 지연(50); ) 지연(500); digitalWrite(LED_PIN,!digitalRead(LED_PIN)); 지연(2000); digitalWrite(LED_PIN,!digitalRead(LED_PIN)); 지연(500); //뚜껑을 닫습니다 for(pos = pos2door+15; pos<= pos1door; pos +=5) { doorServo.write(pos); delay(50); } delay(1000); //открываем крышку не полностью for(pos = pos1door; pos >= pos2도어+15; pos -=1) ( doorServo.write(pos); 지연(50); ) 지연(2000); //뚜껑을 완전히 엽니다. for(pos = pos2door+15; pos >= pos2door; pos -=1) ( doorServo.write(pos); Delay(15); ) //손을 내밀어 for(pos = pos1hand; 포스<= pos2hand-35; pos +=1) { handServo.write(pos); delay(35); } delay(1000); //высовываем руку for(pos = pos2hand-35; pos <= pos2hand+3; pos +=4) { handServo.write(pos); delay(15); } //убираем руку for(pos = pos2hand+3; pos >= pos1손; pos -=7) ( handServo.write(pos); Delay(15); ) //뚜껑을 닫습니다 for(pos = pos2door; pos<= pos1door; pos +=7) { doorServo.write(pos); delay(15); } delay(500); //открываем крышку for(pos = pos1door; pos >= pos2도어+20; pos -=5) ( doorServo.write(pos); 지연(50); ) 지연(300); digitalWrite(LED_PIN,!digitalRead(LED_PIN)); 지연(500); digitalWrite(LED_PIN,!digitalRead(LED_PIN)); 지연(100); //뚜껑을 닫습니다 for(pos = pos2door+20; pos<= pos1door; pos +=1) { doorServo.write(pos); delay(50); } } void move_5(){ //возня for(int i=1; i <=2; i ++) { for(pos = pos1door; pos <= pos1door+45; pos +=5) { doorServo.write(pos); delay(50); } for(pos = pos1door+45; pos >= pos1도어; pos -=5) ( doorServo.write(pos); 지연(50); ) 지연(100); ) //뚜껑을 당긴다 for(int i=1; i<=3; i ++) { doorServo.write(pos1door-6); delay(80); doorServo.write(pos1door-3); delay(80); } delay(300); //открываем крышку digitalWrite(LED_PIN,!digitalRead(LED_PIN)); for(pos = pos1door; pos >= pos2도어+25; pos -=5) ( doorServo.write(pos); 지연(50); ) 지연(500); //커버 열기 digitalWrite(LED_PIN,!digitalRead(LED_PIN)); for(pos = pos2door+25; pos >= pos2door+10; pos -=5) ( doorServo.write(pos); Delay(50); ) //문 열기 digitalWrite(LED_PIN,!digitalRead(LED_PIN)); for(pos = pos2door+10; pos >= pos2door-5; pos -=2) ( doorServo.write(pos); Delay(50); ) //손을 내밀어 for(pos = pos1hand; pos<= pos2hand-35; pos +=9) { handServo.write(pos); delay(35); } delay(1000); //убираем руку for(pos = pos2hand-35; pos >= pos2hand-70; pos -=1) ( handServo.write(pos); 지연(15); ) 지연(1000); //손을 내밀어 for(pos = pos2hand-70; pos<= pos2hand+3; pos +=9) { handServo.write(pos); delay(15); } delay(50); //убираем руку for(pos = pos2hand+3; pos >= pos1손; pos -=7) ( handServo.write(pos); Delay(15); ) //커버를 닫습니다. digitalWrite(LED_PIN,!digitalRead(LED_PIN)); for(pos = pos2door-5; pos<= pos1door+3; pos +=5) { doorServo.write(pos); delay(50); } }

리뷰 시작 부분의 링크에서 작가가 제안한 스케치가 나에게 적합하지 않았습니다. 그리고 나는 아직 지금의 프로가 아니었습니다)))))))
일반적으로 나는 이해하기 시작했습니다. 그 결과, 다른 사람의 스케치를 바탕으로 나만의 스케치를 만들게 되었습니다. 바운싱 방지 기능이 추가되었습니다. 물론 커패시터가 포함된 저항기를 설치하는 것이 더 쉬웠지만 실제로 프로그래밍하고 싶었습니다.


원칙적으로 계획은 스케치에서 명확합니다. 하지만 어쨌든 나는 그녀를 데려오겠습니다. 품질이 좋지 않아 죄송합니다. 최선을 다해 노력하겠습니다. 저는 약간 다른 컨버터 보드를 사용했습니다. 정면에서는 필요하지 않았습니다.


스케치에 대한 특별한 설명은 없습니다. 아마도 서보 속도가 높을 때 몇 도의 회전 각도를 추가하는 순간일 것입니다. 갑자기 "손"이 튀어나와도 토글 스위치가 꺼지지 않는 것을 발견했습니다. 이는 분명히 서보의 품질이 좋지 않기 때문입니다. 따라서 "팔"의 이탈 각도에 약간을 추가해야 합니다. 나는 반복을 통해 이러한 추가 학위가 귀하에게 다를 수 있다고 생각합니다. "팔"의 어깨에 따라 다릅니다.
그리고 프로그램에 대해서. 현재까지 6개의 프로그램이 있습니다. 난수 생성을 통해 호출됩니다. 또한 간단한 프로그램(0, 1, 2)은 일반 프로그램보다 더 자주 호출됩니다. 모든 테스터들에게는 더 정교한 프로그램이 드물고 즐거운 보너스가 되어야 한다고 생각한 다음 특정한 음모가 나타납니다. 그래서 나는 그랬다.
숫자를 좋아하는 경우 상자 크기는 길이 - 150mm, 높이 - 70mm, 너비 - 65mm입니다.

유튜브가 화질이 많이 떨어졌네요. 원본을 보고 싶으시면 다운로드 받으세요. 21MB.
여기에서는 6개 프로그램을 모두 차례로 볼 수 있도록 스케치를 수정하여 모두에 대한 아이디어를 얻을 수 있도록 했습니다. 내가 쓴 것처럼 인생에서는 의사 무작위 순서가 있습니다.



충전은 일반 모바일 충전기를 사용하여 마이크로 USB를 통해 이루어집니다. 배터리 수명은 사용 빈도에 따라 크게 달라집니다. 때로는 며칠 동안, 때로는 하루 만에 "죽인다".


마지막으로.
그러나 이 프로젝트는 더욱 발전되고 개선될 수 있습니다. 새로운 시나리오를 생각해 낼 수 있습니다. 트위터를 추가하고 장치의 음성을 출력할 수 있습니다. 예를 들어, 토글 스위치를 껐다가 켜는 사이의 시간이 매우 짧은 경우 화가 난 것처럼 "으르렁"하게 놔두세요. 원본 프로젝트에서처럼 상자의 움직임을 다른 방향으로 추가할 수 있습니다.
어떤 이유로 "손"이 토글 스위치를 끄지 않은 경우(예: 추운 날씨에 서보가 원하는 각도에 거의 도달하지 못하는 경우)에 대한 검사를 구축하고 각도를 조정할 수 있습니다. 한 번에 하나씩, 그러한 경우를 위해 특별히 "긴장적인" 메시지를 작성합니다. » 프로그램 종료. 매번 장치를 분해하지 않고도 USB를 통해 Nano와 프로그램을 설치할 수 있습니다. 리뷰가 마음에 들었습니다 +123 +232

Arduino + 두 개의 서보 + 충전 보드 + 부스트 컨버터 보드 + 오래된 배터리 + 무선 부품 묶음 + 합판 조각 + 토글 스위치 = 바보의 꿈이 실현됩니다!
읽기를 좋아하는 사람들을 위한 많은 텍스트. "대각선"으로 읽는 것을 좋아하는 사람들을 위한 스포일러가 많습니다. 비디오를 사랑하는 사람들을 위한 비디오. 즉시 복사하고 무릎을 꿇고 달리는 것을 좋아하는 사람들을 위한 스케치입니다. 사진, 사진, 사진. 고양이를 사랑하는 사람들을 위한 고양이.

실제로 면책 조항은 아닙니다.

이것은 LED 깜박임, Hello World 등을 포함하지 않는 첫 번째 프로젝트입니다. 전통에 따르면, 코드가 완벽하지 않다는 주제에 대해 먼저 머리에 재를 뿌려야 하며 이에 대한 논쟁에 참여해야 합니다. 그리고 다른 프로젝트의 코드를 부분적으로 복사하는 경우에도 너무 세게 치지 않도록 부탁드립니다. 하지만 이런 일은 일어나지 않을 것입니다. 코드가 완벽해요! 작동하기 때문에 마음에 들고 나 자신을 위해 만들어졌습니다.
관심 있는 분들에게 조언을 드리겠습니다. 두려워하지 말고, 전투에 참여하고, 산더미 같은 코드를 파헤치고, 다양한 운영자로부터 나만의 메가 피라미드를 구축하세요. 시간이 지나면 스타일, 세련미, 이상이 올 것입니다.
컨트롤러의 메모리에 공간이 있는 한 아무것도 두렵지 않습니다. 벽에 부딪히면 최적화됩니다. 그리고 이것도 발전이다. 중요합니다.
C 프로그래밍에 관한 큰 책 - 예, 유용합니다. 그러나 처음에는 명령에 대한 짧은 참고서를 가지고 있고 간단한 예제, 라이브러리 등을 사용할 수 있는 여러 링크를 책갈피에 보관하는 것이 훨씬 더 유용합니다. arduino-diy.com, 또는 동일한 암페어.
그리고 흐름도도 나에게 많은 도움이 된다. 직사각형, 다이아몬드, 타원형. 당해본 사람은 이해합니다. 저는 지금 하나의 프로젝트를 하고 있습니다. 순서도 없이는 할 수 없습니다. 나에게는 프로그램의 전체 진행 상황을 더 명확하게 상상하기 위해 여러 가지 코드를 스케치하고 거기에 갇히는 것보다 며칠 동안 종이에 그리고 다시 그리는 것이 더 낫습니다. 제한된 경험으로 인해 프로그래밍 생각의 힘으로 전체 코드를 다룰 수는 없습니다.
반복하고 싶거나 자신의 방식으로하고 싶은 분들을 위해 모든 질문에 답해 드리겠습니다.
나는 글쓰기 능력, 스타일, 디자인, 코드, 제품 필요성 등에 관해 공허한 논쟁을 벌이지 않을 것입니다. 리뷰 어딘가에 심각한 실수가 있었다면 수정하거나 추가하겠습니다.

스스로 구글링할 수 있는 "가장 쓸모없는 기기"는 무엇입니까? 나는 우연히 그를 만났습니다. 이 코드는 기본으로 사용되었습니다. 왜냐하면... 저절로 시작된 게 아니고, 제가 직접 대본을 만들고 싶었어요.

서정적 여담

그들은 40대 이후, 특히 이미 40대가 넘었을 때 두뇌를 "워밍업"하려고 노력해야 한다고 말합니다. 그리고 그 언어를 배우는 것이 최고의 워밍업입니다. 그리고 그 나이에만 그런 것이 아닙니다. 나는 언어에 능숙하지 않지만 잡지 "Health"에서 조언하는 것 같습니다. 일반적으로 나는 스스로 새로운 것을 배우기로 결정했습니다. 전자 제품은 대부분 잊어버렸지만 나에게 새로운 것이 아니지만 프로그래밍은 나에게 친숙한 적이 없습니다. 나는 그를 두려워했다. 그러나 여기에는 위에서부터 많은 징후가 일치했습니다. 새로운 것을 배울 것을 권장하는 잡지 "Health", (적어도 약간) 프로그래밍 (적어도 무언가)을 이해하려는 오랜 꿈, 게으른 사람 만이 이해하지 못하는 YouTube 1달러와 코펙에 대한 스마트 결제를 사용하여 LED를 깜박이는 방법에 대해 이야기합니다.
이전에는 두 개의 트랜지스터, 커패시터 및 저항 쌍을 사용하여 LED 깜박임을 제어하는 ​​일을 잘 수행했지만 지금은 이것이 전혀 잘못된 것이 아니라고 말합니다. 그래서 당신은 추세에 있어야합니다.


나는 진정한 의미에서 이 쓸모없는 장치를 정말 좋아했습니다. 나는 그것을 보고 사랑에 빠졌습니다. 나는 그것을 원한다, 그게 다야! 어린 시절의 꿈처럼! 그러나 나이는 스스로 조정되었습니다. 사지 말고 직접 만들어보고 싶어요. 또한 간단한 장치도 판매 중입니다. 나는 "지능형"을 발견했지만 그와 같은 것을 판매용으로 찾을 수 없었습니다. 게다가 우리는 꼭 해야 해요!
그리고 또, 아두이노. 그리고 나는 그것에 대해 붐붐을 일으키지 않습니다. 그래서 우리는 그것을 알아내야 합니다. 알리익스프레스가 도와드리겠습니다. 아두이노로 시작했습니다. 공부의 길은 험난하고 희생이 불가피하다는 것을 알았습니다. 그래서 5개를 다르게 주문했어요. 불타오르게 놔두세요. 회로 디버깅은 다른 판매자의 Uno에서 이루어졌습니다. 하지만 최종 장치에 들어간 것이 바로 이 보드였기 때문에 제목에 포함시켰습니다.
Arduino 외에도 Arduino 호환 및 Arduino에 가까운 모든 종류의 정크를 엄청난 양으로 주문했습니다. 여기서는 이 제품에서 무엇이 유용했는지에 대해서만 설명하겠습니다.

아두이노 프로 미니


표준 정전기 방지 백과 내부 표면이 뾰족한 봉투 형태로 포장되어 배송이 빠릅니다. 판매자는 사교적이고 러시아어를 구사합니다.
328 칩에서. 3.3V, 8MHz. 왜 그럴까요? 네, 실수로요. 5볼트, 16MHz를 원했는데 이걸 샀어요. 내 잘못이야. 그러나 이 프로젝트에서는 이것이 중요하지 않습니다. 추가 전압 변환기를 설치했습니다. 사실 그게 전부입니다. 다른 미니와 큰 차이점은 못 느꼈습니다. 브랜드 차이는 블랙 텍스톨라이트(?) 이고, 단점 중 하나는 RAW 핀이 보드에서 동작하지 않는다는 것입니다. 하지만 그것도 멈추지 않았습니다. 하지만 3.3V 변환기를 사용하면 비용을 절약할 수 있습니다. 결제가 잘 이루어졌습니다.
왜 그렇게 짧게요? 이 판매자와 그의 수수료에 대해 이미 편견이 있기 때문입니다(18항). 원하시는 분들은 쉽게 찾으실 수 있을 겁니다. 그것을 다시 말할 필요가 없습니다. 나는 또한 그에게 댓글에 2센트를 추가했습니다. 그리고 나는 판매자와 진심으로 연락했습니다.

서보 드라이브 SG90


2개 묶음당 $3.2입니다.
특별히 설명할 것은 없습니다. 이동 속도에 크게 좌우되는 평균 위치 정확도를 지닌 약한 서보 드라이브입니다. 그러나 그것은 싸다. 뚜껑 드라이브의 경우 - "손"의 경우 - 가능성이 직전입니다. 작동하려면 5V가 필요하지만 제어에는 3.3이면 충분합니다. 나는 변환기를 통해 Arduino에서 직접 제어하려고 시도했지만 차이가 없습니다. 따라서 레벨 변환기는 비용을 절약했습니다.

충전 컨트롤러 및 전력 변환기


5개에 2.28달러. 보호 기능이 있습니다. 충전 중에는 빨간색 LED가 켜지고, 충전이 끝나면 파란색 LED가 켜집니다. 여기에 리뷰가 있었습니다.


각각 $0.50. 다만 배송비는 착불인데 여기 매장에서 이것저것 다 가져가서 배송 스트레스는 없었어요. 더 가볍게 만들기 위해 USB 소켓이 제거되었습니다.))) 출력은 5.12V를 생성합니다.


오프라인으로 가져왔습니다. 조금 꽉. Serva 작업을 더 쉽게하기 위해 분해하거나 스프링을 줄이거 나 더 약한 것으로 교체하는 것이 가능했습니다. 그러나 게으름이 승리했습니다. 이렇게 넣었습니다. 사실, 고속에서 서보의 회전 각도에 대한 코드 추가를 작성해야 했습니다.

TTL 변환기


개당 1.5달러. 사실 제가 먼저 주문했어요. 두 배나 저렴해요. 그러나 그는 이상한 이유로 용감한 죽음을 맞이했습니다. 나는 아직도 내가 그를 죽인 이유를 이해하지 못했습니다. 이러한 이유로 프로젝트는 새롭고 더 발전된 프로젝트가 도착할 때까지 한 달 동안 중단되었습니다. 재설정을 누를 필요가 없습니다. 이게 진전이 아닌가?

나머지는 재고입니다

TO220 패키지의 전압 조정기 1117T-3.3V, 커패시터 1500.0×6.3 및 470.0×16, 0.1μF 커패시터 2개, 어린이 기계의 백색 LED 및 마이크로 스위치, 저항기 220Ω. 배터리는 몇 년 동안 사용하지 않고 방치되어 있었습니다. 한번은 불에 탄(문자 그대로) 휴대용 DVD 플레이어를 분해한 적이 있습니다. 유일하게 좋은 점은 배터리가 살아 있다는 것입니다. 여기에 유용했던 것 중 하나가 있습니다. 전압 3.7V, 마킹에서 커패시턴스를 찾지 못했습니다.
글루건, 돈을 위한 신축성 밴드, 후크 2개... 브라(아내 덕분에. 달링, 사랑해요!), 가구 다웰 2개, 나사 4개, 가구 문용 접착 범퍼 4개 오, 조각 브레드보드, 전선, 커넥터.

신체의 상황은 더욱 복잡했습니다. 많은 상자가 시험되었습니다. Tissot 시계의 플라스틱 상자는 깨지기 쉬운 것으로 밝혀졌으며 부분적으로는 판지였습니다. 그러나 금속 커튼이 그녀에게서 멀어졌습니다. 재고도 한개 남아있습니다. 기성품 향수 케이스, 와인 상자, 사탕 상자를 사용해 보았습니다. 결국 제가 직접 하기로 결정했습니다.
자작나무로 추정되는 고품질 합판이 어린이용 불타는 세트에서 발견되었습니다. 아이가 자랐습니다. 세트가 남아 있습니다. 한쪽에는 드로잉을 적용했는데 반대쪽은 보이더라구요 직설적으로 말하자면 훌륭하다

직설적으로 말하자면 대단하다

학교에는 노동자가있었습니다. 나이에. 일반적으로 그는 훌륭한 사람입니다. 그는 존경 받았습니다. 우리가 전기, 예를 들어 배터리, 전구, 열쇠를 다루었을 때 그는 우리에게 강의를 해주었습니다.
“배터리에 전류가 흐르고 있습니다. 이제 그는 갑자기 나타나 전선을 따라갑니다. 간다, 간다, 갑자기 빵-열쇠가 오는 중입니다. 그리고 열쇠는 열려있습니다. Tok은 더 이상 갈 곳이 없다는 것을 이해합니다. 그는 돌아 서서 배터리 안으로 들어갔다. 그리고 불이 켜지지 않습니다. 열쇠를 닫자. 전류는 다시 흐르고, 키에 도달하고, 이를 통과하고, 전구를 통과하여 배터리로 돌아갑니다. 그리고 전구가 켜져 있습니다. 말하자면 훌륭합니다.” 그 이후로 어휘집에는 예기치 않게 성공한 일의 동의어와 같은 문구가 있습니다.


쇠톱, 퍼즐로 합판을 잘라 보았으나 소용이 없었습니다. 제거하기 어려운 칩은 가장자리가 고르지 않습니다. 나는 탈출구를 찾았습니다. 날카로운 문구용 칼이었습니다. 한쪽은 합판의 절반, 다른 쪽은 절반으로 자릅니다. 그런 다음 약간의 샌딩을 수행하면 모든 것이 정상입니다. 그러나 좋은 금속 자와 끊임없이 날카로운 칼날을 사용하면 완벽한 절단과 직선을 얻을 수 있습니다.
물론 실수가 없는 것은 아닙니다. 손으로 만든 스티커 아래에는 평범한 구멍이 숨겨져 있습니다. 토글 스위치를 위해 중앙에 구멍을 뚫었습니다. 하지만 서버가 맞지 않았습니다. 토글 스위치를 옆으로 옮기고 구멍을 막아야 했습니다. 그런 어려움은 나를 두렵게 하지 않습니다.
장치를 만드는 모든 단계를 설명하는 것이 요점을 모르겠습니다. 몇 가지 사항을 설명하겠습니다. 그리고 손 있는 사람은 그렇게 하십시오.
글루건을 사용해 상자를 조립했어요. 나는 접착제 자체를 아끼지 않았습니다. 완벽하게 유지됩니다. 삐걱거리지도 않고 놀지도 않습니다. 빠르고 저렴하며 쾌활합니다. 그리고 일반적으로 아시다시피 거의 모든 것이 이 접착제로 고정되어 있습니다. 난 그것을 추천 해. 조립 과정의 속도가 크게 향상됩니다. 스위치 끄기 마이크는 안쪽에서 왼쪽 벽으로 접착되어 있습니다. 사진에서 조금 볼 수 있습니다.
커튼에 뚜껑을 달았어요.

나는 베일로 인해 고통을 겪었습니다. 나는 많은 것을 실험했다. 나는 뚜껑이 상자 내부가 아닌 상단에 위치하길 원했습니다. 종이 클립으로 여러 버전의 커튼 스테이플을 구부리기까지 했습니다. 그러다가 실험 과정에서 티쏘 시계 상자의 커튼이 눈에 띄었다는 것을 기억했습니다. 정말 친절해요, 스위스(중국인?)
커튼은 중요한 것입니다. 그 품질은 장치의 전반적인 외부 아름다움에 매우 중요합니다.
메인 토글 스위치는 더 부드러워야 작업이 더 쉬워집니다.
뚜껑은 탄성 밴드에 의해 닫힌 위치로 돌아갑니다. 매우 어렵게 선택할 필요는 없습니다. 서버가 이를 처리하지만 커튼이 중앙에 위치하면 뚜껑이 휘게 됩니다.
합판의 경우 광택 처리가 필수입니다. 매우 더러워집니다. 무색의 카폰 바니쉬를 사용했습니다. 왜냐하면 손에 다른 사람이 없었기 때문입니다.
"손"을 제어하는 ​​서보를 다르게 배치하는 것이 좋습니다. 측면이 아니라 토글 스위치 앞에 있습니다. 그러면 "암"은 U자형 대신 L자형으로 제조하기가 더 쉬울 수 있습니다. 상자의 너비를 줄일 수 있고 토글 스위치를 중앙에 배치할 수 있습니다.
뚜껑 서보를 180도 회전시키는 것이 더 좋습니다. 그러면 코드에서 이 서보의 각도를 뚜껑 작동과 연관시키는 것이 더 쉬울 것입니다. 나에게는 그 반대이므로 개방도가 감소합니다. 그리고 "손"은 그 반대입니다. 그리고 고무줄이 당겨지는 쪽과 같은 쪽에서 뚜껑을 밀어내는 것이 더 정확합니다.
상자를 너무 작게 만들어서는 안됩니다. 사용하기 편리하지 않습니다. 그러나 더 평평한 것이 허용됩니다. 상자가 가볍고 평평하면 더 안정적입니다. 상자를 잡지 않고 손가락으로 토글 스위치를 누르는 것이 더 편리할 것입니다.
나는 브레드보드 두 조각으로 방패 같은 것을 만들었습니다. 커넥터 없이 Arduino에 납땜되었습니다. 치명적인. 나는 미안하다고 생각하지 않습니다.


그런데 커넥터에 주변기기를 다 제가 만들었어요. 더 편리합니다.
Arduino에 전원을 공급하려면 고용량 커패시터(3.3V)가 필요합니다. 그것이 없으면 Arduino가 중단됩니다.
장치의 조립 도면이 없습니다. 이는 매우 간단하여 모든 메커니즘의 기반이 되는 다른 많은 간단한 솔루션을 적용할 수 있습니다. 비디오에서 광산 및 기타 유사한 장치 모두에서 사용된 드라이브 옵션을 볼 수 있습니다.

#포함하다 #포함하다 서보 도어서보; //뚜껑 서보 드라이브 Servo handServo; // 서보 바운스 바운서 = Bounce(12, 40); //토글 스위치의 핀 12에 대한 Bounce 클래스의 인스턴스를 생성합니다. int pos = 0; //초기 위치 변수 int pos1door = 70; //뚜껑 서보모터의 초기 위치 int pos2door = 30; //커버 서보모터의 최종 위치 int pos1hand = 10; //핸드 서보의 초기 위치 int pos2hand = 160; //핸드 서보의 최종 위치 int r; //토글 스위치를 끄는 옵션에 따라 달라지는 임의의 숫자 #define LED_PIN 11 // LED에 연결된 출력 번호 int ledState = LOW; // 이 변수를 사용하여 LED 상태를 설정합니다. long PreviousMillis = 0; // 마지막 LED 스위칭 시간을 저장 #define INTERVAL 30UL // LED를 켜고 끄는 간격 void setup() ( pinMode(LED_PIN, OUTPUT); pinMode(12, INPUT); // 핀 12를 입력으로 전환 mode digitalWrite(12, 1); //풀업 저항을 켭니다. Serial.begin(9600); //포트를 9600bps 속도로 설정합니다. 디버깅을 위해. 그런 다음 제거할 수 있습니다. doorServo.attach (9); //뚜껑 서보를 핀 9에 할당 handServo.attach(10); //핸드 서보를 핀 10에 할당 doorServo.write(pos1door); //뚜껑 서보를 초기 위치로 설정 handServo.write( pos1hand); //핸드 서보를 초기 위치로 설정 ) void loop() ( if (bouncer.update()) ( if (bouncer.read()==0) ( //버튼을 누른 경우 ( r = random(0,11); //난수 jn 0 ~ 10을 생성합니다. Serial.println® ; if (r == 0) ( move_0(); ) //난수에 기반한 함수 호출 else if (r == 1) ( move_1(); ) else if (r == 2) ( move_2(); ) else if (r == 3) ( move_3(); ) else if (r == 4) ( move_4(); ) else if (r == 5) ( move_5(); ) else if (r == 6) ( move_0(); ) else if (r == 7) ( move_1(); ) else if (r == 8 ) ( move_4(); ) else if (r == 9) ( move_3(); ) else if (r == 10) ( move_0(); ) ) ) ) // 함수 라이브러리. 일반 원칙: 뚜껑 열기 - 손을 내밀고 토글 스위치 끄기 - 손 빼기 - 뚜껑 닫기 // 아름답게 배열하는 방법에 대한 옵션이 있습니다........... 무효 move_0())( //간단한 옵션: 열기-끄기-닫기 //뚜껑 열기 for(pos = pos1door; pos >= pos2door; pos -=3) ( doorServo.write(pos); 지연(15) ; ) //손을 내밀다 for(pos = pos1hand ;pos<= pos2hand; pos +=3) { handServo.write(pos); delay(15); } //убирaeм руку for(pos = pos2hand; pos >= pos1손; pos -=3) ( handServo.write(pos); Delay(15); ) //뚜껑을 닫습니다 for(pos = pos2door; pos<= pos1door; pos +=3) { doorServo.write(pos); delay(15); } } void move_1(){ //прocтoй вaриaнт 2: oткрыли-выключили-зaкрыли //oткрывaeм крышку for(pos = pos1door; pos >= pos2door; pos -=1) ( doorServo.write(pos); 지연(15); ) 지연(1000); //손 들기 for(pos = pos1hand; pos<= pos2hand; pos +=1) { handServo.write(pos); delay(15); } //убирaeм руку for(pos = pos2hand; pos > <= pos1door; pos +=5) { doorServo.write(pos); delay(15); } } void move_2(){ //зaдумчивый вaриaнт 2: приoткрыли-зaкрыли-oткрыли-выключили-зaкрыли //oткрывaeм крышку for(pos = pos1door; pos >= pos2도어+15; pos -=5) ( doorServo.write(pos); 지연(15); ) 지연(1000); //뚜껑을 닫습니다 for(pos = pos2door+15; pos<= pos1door; pos +=5) { doorServo.write(pos); delay(15); } delay(1000); //oткрывaeм крышку for(pos = pos1door; pos > <= pos2hand+2; pos +=5) { handServo.write(pos); delay(15); } //убирaeм руку for(pos = pos2hand+2; pos >= pos1손; pos -=5) ( handServo.write(pos); 지연(15); ) //뚜껑을 닫습니다 for(pos = pos2door; pos<= pos1door; pos +=5) { doorServo.write(pos); delay(15); } } void move_3(){ //дeргaный вaриaнт: приoткрыли-пoдeргaли - зaкрыли-oткрыли-выключили-зaкрыли //oткрывaeм крышку for(pos = pos1door; pos >= pos2도어+15; pos -=1) ( doorServo.write(pos); 지연(50); ) 지연(500); //뚜껑을 당깁니다 for(int i=1; i<=8; i ++) { doorServo.write(pos2door+18); delay(80); doorServo.write(pos2door+15); delay(80); static unsigned long previousMillis = 0; if(millis() - previousMillis >간격) ( 이전Millis = millis(); digitalWrite(LED_PIN,!digitalRead(LED_PIN)); ) ) 지연(500); //뚜껑을 닫습니다 for(pos = pos2door+15; pos<= pos1door; pos +=1) { doorServo.write(pos); delay(50); } delay(1000); //oткрывaeм крышку for(pos = pos1door; pos >= pos2door; pos -=5) ( doorServo.write(pos); 지연(15); ) //손 들기 for(pos = pos1hand; pos<= pos2hand+2; pos +=5) { handServo.write(pos); delay(15); } //убирaeм руку for(pos = pos2hand+2; pos >= pos1손; pos -=5) ( handServo.write(pos); 지연(15); ) //뚜껑을 닫습니다 for(pos = pos2door; pos<= pos1door; pos +=5) { doorServo.write(pos); delay(15); } } void move_4(){ //oткрывaeм крышку delay(2000); for(pos = pos1door; pos >= pos2도어+15; pos -=5) ( doorServo.write(pos); 지연(50); ) 지연(500); digitalWrite(LED_PIN,!digitalRead(LED_PIN)); 지연(2000); digitalWrite(LED_PIN,!digitalRead(LED_PIN)); 지연(500); //뚜껑을 닫습니다 for(pos = pos2door+15; pos<= pos1door; pos +=5) { doorServo.write(pos); delay(50); } delay(1000); //oткрывaeм крышку нe пoлнocтью for(pos = pos1door; pos >= pos2도어+15; pos -=1) ( doorServo.write(pos); 지연(50); ) 지연(2000); //뚜껑을 완전히 엽니다. for(pos = pos2door+15; pos >= pos2door; pos -=1) ( doorServo.write(pos); Delay(15); ) //손을 내밀어 for(pos = pos1hand; 포스<= pos2hand-35; pos +=1) { handServo.write(pos); delay(35); } delay(1000); //выcoвывaeм руку for(pos = pos2hand-35; pos <= pos2hand+3; pos +=4) { handServo.write(pos); delay(15); } //убирaeм руку for(pos = pos2hand+3; pos >= pos1손; pos -=7) ( handServo.write(pos); Delay(15); ) //뚜껑을 닫습니다 for(pos = pos2door; pos<= pos1door; pos +=7) { doorServo.write(pos); delay(15); } delay(500); //oткрывaeм крышку for(pos = pos1door; pos >= pos2도어+20; pos -=5) ( doorServo.write(pos); 지연(50); ) 지연(300); digitalWrite(LED_PIN,!digitalRead(LED_PIN)); 지연(500); digitalWrite(LED_PIN,!digitalRead(LED_PIN)); 지연(100); //뚜껑을 닫습니다 for(pos = pos2door+20; pos<= pos1door; pos +=1) { doorServo.write(pos); delay(50); } } void move_5(){ //вoзня for(int i=1; i <=2; i ++) { for(pos = pos1door; pos <= pos1door+45; pos +=5) { doorServo.write(pos); delay(50); } for(pos = pos1door+45; pos >= pos1도어; pos -=5) ( doorServo.write(pos); 지연(50); ) 지연(100); ) //뚜껑을 당긴다 for(int i=1; i<=3; i ++) { doorServo.write(pos1door-6); delay(80); doorServo.write(pos1door-3); delay(80); } delay(300); //oткрывaeм крышку digitalWrite(LED_PIN,!digitalRead(LED_PIN)); for(pos = pos1door; pos >= pos2도어+25; pos -=5) ( doorServo.write(pos); 지연(50); ) 지연(500); //커버 열기 digitalWrite(LED_PIN,!digitalRead(LED_PIN)); for(pos = pos2door+25; pos >= pos2door+10; pos -=5) ( doorServo.write(pos); Delay(50); ) //문 열기 digitalWrite(LED_PIN,!digitalRead(LED_PIN)); for(pos = pos2door+10; pos >= pos2door-5; pos -=2) ( doorServo.write(pos); Delay(50); ) //손 들기 for(pos = pos1hand; pos<= pos2hand-35; pos +=9) { handServo.write(pos); delay(35); } delay(1000); //убирaeм руку for(pos = pos2hand-35; pos >= pos2hand-70; pos -=1) ( handServo.write(pos); 지연(15); ) 지연(1000); //손 들기 for(pos = pos2hand-70; pos<= pos2hand+3; pos +=9) { handServo.write(pos); delay(15); } delay(50); //убирaeм руку for(pos = pos2hand+3; pos >= pos1손; pos -=7) ( handServo.write(pos); Delay(15); ) //커버를 닫습니다. digitalWrite(LED_PIN,!digitalRead(LED_PIN)); for(pos = pos2door-5; pos<= pos1door+3; pos +=5) { doorServo.write(pos); delay(50); } }

리뷰 시작 부분의 링크에서 저자가 제공한 스케치가 시작되지 않았습니다. 그리고 나는 아직 지금의 프로가 아니었습니다)))))))
일반적으로 나는 그것을 알아 내기 시작했습니다. 그 결과, 다른 사람의 스케치를 바탕으로 나만의 스케치를 만들게 되었습니다. 바운싱 방지 기능이 추가되었습니다. 물론 커패시터가 포함된 저항기를 설치하는 것이 더 쉬웠지만 실제로 프로그래밍하고 싶었습니다.


원칙적으로 계획은 스케치에서 명확합니다. 하지만 어쨌든 가져갈게요. 품질이 좋지 않아 죄송합니다. 최선을 다해 노력하겠습니다. 나는 약간 다른 변환기 보드를 사용했습니다. "정면"섹션에서 필요한 것을 찾지 못했습니다.

스케치에 대한 특별한 설명은 없습니다. 아마도 서보의 속도가 높을 때 회전 각도에 몇도를 추가하는 순간일 것입니다. "손"이 급격하게 튀어 나오면 토글 스위치가 꺼지지 않는 것을 발견했습니다. 이는 분명히 서보의 품질이 낮기 때문입니다. 따라서 "팔"의 이탈 각도에 약간을 추가해야 합니다. 나는 반복을 통해 이러한 추가 학위가 귀하에게 다를 수 있다고 생각합니다. "팔"의 어깨에 따라 다릅니다.
그리고 프로그램에 대해서. 현재까지 6개의 프로그램이 있습니다. 난수 생성을 통해 호출됩니다. 게다가 간단한 프로그램(0, 1, 2)이 평소보다 더 자주 호출됩니다. 모든 테스터들은 더 정교한 프로그램이 흔치 않고 즐거운 보너스가 되어야 한다고 생각했고, 그러면 약간의 음모가 나타납니다. 그래서 나는 그랬다.
숫자를 좋아하는 분들을 위해 - 상자 크기: 길이 - 150mm, 높이 - 70mm, 너비 - 65mm.

유튜브가 화질이 많이 나빠졌네요. 원본을 보고 싶으시면 다운로드 받으세요. 21MB.
여기서는 6개의 프로그램을 모두 차례로 볼 수 있도록 스케치에 변화를 주어 모든 것에 대한 아이디어를 얻을 수 있게 되었습니다. 내가 쓴 것처럼 인생에서는 의사 무작위 순서가 있습니다.

충전은 휴대폰의 일반 충전기를 사용하여 마이크로 USB를 통해 이루어집니다. 자율성은 사용 빈도에 따라 크게 달라집니다. 때로는 며칠 동안, 때로는 하루 만에 "죽인다".


마지막으로.
그러나 프로젝트는 개선되고 개선될 수 있습니다. 새로운 시나리오를 생각해 낼 수 있습니다. 트위터를 추가하고 장치에서 소리를 낼 수 있습니다. 예를 들어, 토글 스위치를 껐다가 켜는 사이의 시간이 매우 짧은 경우 화가 난 것처럼 "으르렁"하게 놔두세요. 원본 프로젝트에서처럼 상자의 움직임을 다른 방향으로 추가할 수 있습니다.
어떤 이유로 "손"이 토글 스위치를 끄지 않는 경우(예: 추운 날씨에 서보가 원하는 각도에 거의 도달하지 못하는 경우)에 대한 검사를 구축하고 각도를 조정할 수 있습니다. 한때 그러한 경우를 위해 특별히 "긴장적인" 프로그램을 작성했습니다. » 종료 프로그램. 매번 장치를 분해하지 않고도 USB를 통해 Nano를 설치하고 프로그래밍할 수 있습니다.

그리고 일반적으로 더 신중하게 수행할 수 있습니다. 다양한 일이 가능합니다. 사실, 이것이 바로 관심이 있는 사람들에게 제가 제안하는 것입니다.
어쩌면 내가 뭔가를 놓쳤을 수도 있습니다. 이러한 간단한 장치에 대한 리뷰는 상당히 큰 것으로 나타났습니다. 이에 대해서는 사과드릴 수 있습니다.
이제 고양이님과 끝까지 읽어주셔서 감사합니다.

국내 생쥐 먹는 사람의 여름 사진 세션

약 5시에 많은 사람들에게 잘 알려진 불행이 일어났습니다. 좋은 친구의 생일이었습니다. "무엇을 줄까? "라는 질문이 다시 생겼습니다. 사람이 집안의 쓸모없는 것을 좋아하지 않는다는 사실을 고려하여 그에게 쓸모없는 것을 제공하려는 아이디어가 생겼습니다. 여기에는 몇 가지 논리가 있습니다. 결국 그 자신은 결코 쓸모없는 것을 얻지 못할 것입니다. 그러나 만인의 조화를 위해서는 가정에 이들 중 적어도 하나가 있어야 합니다. 글쎄요... 혼자... 그가 말할 수만 있다면: " 나는 쓸데없는 것을 좋아하지 않는다. 내 집에는 쓸모없는 물건이 딱 하나 있는데, 이 정도면 온 인류의 조화를 이루기에 충분합니다. 주제가 종료되었습니다.“글쎄요, 생일 선물은 사람이 이 주제를 영원히 끝내고 다시는 생각하지 않도록 돕는 좋은 이유입니다 :-)

이런 상황에서는 액자를 하나 더 만들거나 선반에 놓을 쓸데없는 기념품을 찾는 것만으로는 충분하지 않았습니다. 대부분의 사람들에게 그들의 쓸모없음은 그다지 분명하지 않습니다. 너무 쓸모없어서 그것의 쓸모없음이 단순히 그 물건에서 흘러나올 정도로 뭔가를 생각해 내는 것이 필요했습니다. 그래서 그것은 쓸모없는 본질 전체를 의인화하는 일종의 상징이 될 것입니다.

솔직히 저는 그런 것을 많이 알지 못합니다. 그리고 그 중에는 제가 아주 오랫동안 하고 싶었던 일이 하나 있습니다. 영어권 인터넷에서는 "The Most Useless Machine Ever" 또는 "Leave Me Alone Box"라고 불립니다. 원하는 경우 모든 YouTube에서 이러한 두 가지 쿼리에 대해 이 쓸모없는 장치를 구현하기 위한 많은 옵션을 찾을 수 있습니다.

이러한 장치의 본질은 모든 작업이 자체적으로 꺼지는 것을 목표로 한다는 것입니다. 켜면 저절로 꺼집니다. 그게 다야.

내가 본 것 중 가장 미친 기계 - 이 하나. 그녀가 다른 사람들과 다른 점은 그녀가 끈기를 가지고 있으면 자연스럽게 히스테리에 빠질 수 있다는 것입니다. 폭력적인 공격이 있은 후, 그녀는 스위치를 끌 뿐만 아니라 당신이 더 이상 그 원인을 알 수 없도록 스위치를 숨길 것입니다... 솔직히 말해서, 이 모든 것이 그녀의 본질을 위반하는 것입니다. 그녀는 즐겁게 시작합니다. 따라서 더 이상 쓸모가 없습니다 :-)

나는 클래식 버전을 만들기로 결정했습니다. 그들은 확실히 많은 즐거움을 누릴 수 없을 것입니다. 게다가 온갖 기계적인 트릭을 쓸 시간도 전혀 없었는데...

제가 하려는 작업의 일반적인 개요는 다음과 같습니다.

작동 원리는 다음과 같습니다.

뚜껑.장치가 조립되는 상자의 구조 요소입니다. 작동 중에는 레버를 "해제"하기 위해 올라가야 하며(2단계), 장치를 후진으로 전환합니다(3단계).

액자.경첩식 뚜껑이 달린 단순한 상자입니다. 합판 스크랩이 일정량 있었기 때문에 그것으로 상자를 만들기로 결정했습니다.

텀블러.토글 스위치만 필요하지 않습니다. 여러 조건을 만족해야 합니다. 첫째, "이중"이어야합니다. 저것들. 하나의 회선이 아닌 두 개의 회선을 서비스합니다. 이것은 6개의 접점이 있는 필요한 토글 스위치 종류입니다.

둘째, 토글 스위치는 "소프트"해야 합니다. 저것들. 전환하는 데 많은 노력이 필요하지 않습니다. 사진과 같이 오늘날 일반적으로 사용되는 마이크로스위치는 이 조건을 완벽하게 충족합니다. 물론 원칙적으로 성냥갑 크기의 무거운 "무궤도 전차"토글 스위치를 사용하는 것을 방해하는 것은 없습니다. 훨씬 더 강력한 모터와 기어박스가 필요하기 때문에 찾기가 쉽지 않습니다. 마이크로 스위치의 경우 거의 모든 서보 드라이브가 적합하며 그 중 무선 조종 모델용 예비 부품이 매장에 많이 있습니다.

"지느러미". 이 요소는 아이디어의 맨 마지막에 추가되었습니다. 처음에는 다이어그램에 없었습니다. 레버가 뚜껑을 충분히 높이 올리지 못한 것 같았습니다. 늘리려고... 음... 표현력전체 동작을 위해서는 뚜껑을 더 올려야 합니다... 분명히. 물론 이론적으로 이 "핀"은 단일 전체가 되도록 레버의 프로파일에 즉시 내장되어야 합니다. 그러나 그것을 추가하려는 아이디어는 거의 전체 구조가 이미 조립되었을 때 나에게 왔습니다. 따라서 "핀"은 레버에 접착된 별도의 요소가 되었습니다.

레버 암. 두꺼운 플렉시글라스 판. 자신있게 토글 스위치를 던질 만큼 강인합니다(3단계). 주요 문제는 프로필을 정확하고 정확하게 개발하는 것입니다. 도중에 아무것도 걸리지 않고 자유롭게 회전해야 하며, 뚜껑을 들어 올리고 토글 스위치의 딸깍 소리에 정확히 닿아야 합니다.

배터리.처음에는 일반 9볼트를 사용할 계획이었습니다. 다이어그램에도 표시되어 있습니다. 그러나 나중에 발견된 기어박스가 있는 모터의 경우 9V가 너무 많은 것으로 밝혀졌습니다. 장치는 매우 빠르게 작동했습니다. 레버는 눈에 거의 감지되지 않을 정도로 이젝터 블레이드처럼 튀어나왔습니다. 동시에 장치는 의도한 대로 작동했지만 이러한 속도에서는 작업의 쓸모 없음을 완전히 즐길 수 없었습니다. 9볼트를 1.5볼트 2개로 교체한 후(총 3볼트를 얻었습니다) 메커니즘 작동 속도가 크게 느려졌고 모든 것이 원활하고 개념적으로 정상적으로 작동했습니다.

모터 및 기어박스.. 기어박스만 있는 모터일 뿐입니다. 저는 회전 속도(가능한 한 느림), 생성되는 힘(계산된 것보다 높은 것이 좋음), 가격(가능한 한 낮음)을 기준으로 선택했습니다. 결과적으로 이러한 모든 조건에 따라 기어박스가 있는 모터가 선택되었습니다. 저렴하고 컴팩트하며 전압에 적합하며 속도가 낮고 레버에 상당히 인상적인 힘이 발생했습니다.


기어박스에 필요한 힘의 양을 어떻게 계산했습니까? 매우 간단합니다. 완전히 서툴지만. 나는 방금 전자 저울을 가져다가 토글 스위치를 잡고 저울 판의 클릭커로 기울여서 전환될 때까지 눌렀습니다. 전환하는 순간 스케일 디스플레이에서 판독값을 가져왔습니다. 물론 결과 값은 "인치당 몇 온스"가 아니라 "스케일 플레이트 크기당 몇 온스"라는 계열에서 나온 것이지만 여전히 이 수치는 일반적인 대략적인 아이디어를 제공합니다. 오류를 추정할 수 있습니다... 제 경우에는 레버에 인치당 약 30온스를 제공하는 기어박스가 있는 모터를 찾아야 했습니다. 글쎄, 주고 받든가... 선택한 메커니즘은 인치당 50온스를 생산하는데, 이는 모든 오류를 고려하면 충분합니다.

위 다이어그램에는 또 다른 중요한 세부 정보가 누락되어 있습니다.
역 차단기.토글 스위치를 전환한 후(4단계) 원래 위치로 돌아가는 레버가 전체 시스템을 차단하고 더 이상 움직이지 않도록(5단계) 필요합니다. 그러한 차단기는 매우 원시적이고 명백하며 단순한 것으로 보였습니다.

... 그림에서 전혀 주목할 가치가 없습니다. 아, 내가 얼마나 틀렸어 !!! 전체 프로젝트에서 이 빌어먹을 차단기는 정말 내 신경을 망친 가장 큰 모험이 되었습니다!

장치의 전기 회로는 다음과 같습니다.

S1은 주요 "이중" 토글 스위치입니다. 작동의 본질은 단순히 모터(M)에 공급되는 전류의 극성을 전환한다는 것입니다. 따라서 스위치의 위치에 따라 드라이브가 시계 방향 또는 시계 반대 방향으로 회전합니다.
S2는 토글 스위치 S1을 역방향으로 전환한 후 레버가 원래 위치로 돌아갈 때 회로를 열어야 하는 동일한 역방향 차단기입니다.

이것은 모두 이론적인 부분이었습니다. 이제 이론부터 실천까지.

문제는 첫 순간부터 시작됐다. 위에 링크한 매장에는 필요한 기어박스 재고가 없었습니다. 그들은 일주일 안에 새 배치를 구입하여 즉시 나에게 보내겠다고 맹세했습니다. 그들은 몹시 사과하고 다른 기어박스로 교체하겠다고 제안했습니다. 하지만 나에게 필요하지 않은 각종 기어와 고정 장치가 완비되어 있었고, 전반적으로 가격 대비 나에게 적합하지 않은 일종의 헬리콥터 키트처럼 보였습니다. eBay에서는 동일한 기어박스의 가격이 어떤 이유로든 두 배나 비쌉니다. 다른 상점에서도 바로 적합한 것이 발견되지 않았습니다. 시간이 좀 남아서 기다릴 수 있었습니다. 내 추정에 따르면 이 모든 것을 수집하는 데는 이틀 저녁이 걸릴 것입니다. 게다가 배송비까지 며칠이 걸립니다. 만일의 경우를 대비해 하루를 남겨두세요. 따라서 최소한 'X시' 5일 전에 나에게 보내면 제시간에 선물을 만들 수 있는 시간이 있게 됩니다. 글쎄요, 보내지 않으면 할 일이 없습니다. eBay에서 특급 배송으로 구하겠습니다... 하지만 가게는 실망하지 않았습니다. 기어 박스가 제 시간에 보내졌습니다.

우선 레버와 토글스위치를 이용한 실험이 필요했다. 결국 계산을 놓치면 기어박스의 강도가 토글 스위치를 전환할 만큼 충분하지 않게 됩니다. 즉, 치수가 다른 또 다른 기어박스가 필요하고 다른 모든 계산도 달라집니다. 레버를 절단하고 상자를 만들기 전에 장치가 이론적으로 작동 가능한지 확인해야 합니다.

실험의 첫 번째 단계는 전기 회로를 확인하는 것입니다. 멀티미터 판독값에 따르면 토글 스위치가 출력 극성을 성공적으로 변경했습니다.

실험의 두 번째 단계는 기어박스를 레버와 연결하여 토글 스위치가 전환되는지 확인하는 것입니다. 나는 내 손에 처음으로 들어온 플렉시 유리 조각을 지렛대로 사용했습니다.

모든 것이 올바르게 완료되면 모터가 레버를 앞뒤로 움직여 토글 스위치를 한쪽에서 다른쪽으로 전환해야 합니다.

좋아요. 실험은 완전히 성공했으며 이 기어박스를 기반으로 최종 장치를 조립하는 것이 가능했습니다.

이미 말했듯이 나는 합판으로 데이 박스를 만들기 시작했습니다.

여기서 유일한 미묘함은 비행기 연결이었습니다. 겹쳐지면 시트의 끝이 보입니다. 아름답지 않아요. 따라서 모든 플레이트의 가장자리는 45°로 정리되었습니다.

이제 관절의 끝이 보이지 않도록 접착할 수 있습니다.

상자에 기어박스를 고정하기 위해 오래된 슬롯 플러그에서 이 무서운 브래킷을 구부렸습니다.

너무 무서워서 그림을 그리기로 결정했습니다. 미학적 측면에서는... 하지만 그 그림이 제품에 매우 미학적인 면을 가져왔는지는 잘 모르겠습니다.

흠... 실제보다 사진에서 더 역겨워 보이는 경우는 드물죠. 일반적으로 반대 방향으로 발생합니다 :-)

레버... 먼저 인쇄된 템플릿이 플렉시글라스 조각으로 옮겨졌습니다.

여기서 나는 매우 정확해야 했습니다. 이 장치는 단순하지만 매우 작은 오류만 허용했습니다. 그렇지 않으면 토글 스위치에 들어가지 않거나 상자에 걸리기 시작할 것입니다... 저는 심지어 이 경우를 위해 직소에 신선하고 날카로운 칼날을 집어넣었습니다.


결국 모든 것이 예상대로 진행되었습니다.

불행히도 불완전한 우주에는 관성이라는 현상이 있습니다. 제 경우에는 모터의 전원을 차단한 후에도 관성에 의해 레버를 계속 흔들다가 완전히 멈추는 현상이 발생했습니다.

이 기어박스의 제작자도 관성의 존재를 의심한 것 같습니다. 따라서 그들은 기어 메커니즘에 일종의 퓨즈를 제공했습니다. 레버가 무언가 위에 놓여 있고 기어가 계속 회전하면 전체 기어 박스가 부서지지 않도록 (결국 플라스틱임) 거기에 스위치를 만들었습니다. 누르면 레버가 후진으로 전환됩니다. 오래 가지 않습니다.

결국 나는 다음과 같이 얻었습니다. 레버가 롤백되고 차단기가 열리고 모터의 전류가 꺼지고 레버가 관성에 의해 계속 더 누르고 기어 박스의 퓨즈가 트립되고 레버가 안으로 들어갑니다. 다른 방향... 차단기, 그루터기 깨끗하고 회로를 다시 복원하고 모터가 켜지고 레버가 다시 차단기로 이동하고 열리며... 관성, 롤백, 접촉... 그래서 탭을 망치게 됩니다. 마비될 정도로 춤을 춰라. 물론 재미있어 보이지만...

레버의 후속 관성을 고려하여 체인을 조금 미리 끊도록 차단기를 조정해야 할 것 같습니다. 실제로 이 개정안을 작성하는 것은 매우 어려운 일이었습니다. 항상 두 가지 극단이 있었습니다. 전류가 너무 일찍 차단되어 레버가 끝까지 내려가지 않았거나(따라서 상자 뚜껑이 닫히지 않았음) 브레이크가 너무 늦게 트리거되어 메커니즘이 " 위에서 설명한 탭댄스' 입니다.

즉시 결합되는 많은 요소가 있습니다. 차단기 레버의 길이도 포함됩니다. 마이크로 마우스 버튼으로 나만의 작은 차단기도 만들었습니다. 여전히 작동하지 않았습니다. 그리고 릴레이처럼 두 개의 구리 스트립 형태로 차단기를 만들려고 노력했습니다. 모든 것을 시도했습니다. 나는 모든 것을 원래대로 설정하려고 거의 미쳐버릴 뻔했습니다! 마이크로피드를 사용하여 일종의 매우 정밀한 트리밍 메커니즘을 만들어야 한다는 것이 밝혀졌습니다. 인터럽트 지연을 미크론 정밀도로 조정할 수 있도록...

다행히도 더 쉬운 방법이 있었습니다. 고정관념에서 벗어나 생각하고... 이런 유형의 차단기를 완전히 버리는 것만으로도 충분했습니다. 레버 설계에 의해서만 접촉이 중단될 수 있다고 누가 말했습니까? 레버를 사용하지 않고 기계적으로 문제를 해결하는 방법은 백만 가지가 있습니다(이 경우 전자 방법은 고려되지 않음).

레버는 크고 아름다운 금속 와셔로 기어박스에 고정되어 있습니다. 따라서 연락처 중 하나로 직접 사용할 수 있습니다. 두 번째 접촉 덩굴손이 이를 따라 기어갑니다. 안테나와 와셔의 접촉을 제거하면 간단히 열 수 있습니다. 간단한 테이프로. 이와 같이:

조정은 다음과 같이 수행됩니다. 먼저 절연 테이프를 큰 여백으로 붙인 다음 레버가 필요한 위치에서 정확히 멈출 때까지 메스를 사용하여 머리카락 두께의 작은 스트립을 잘라냅니다.

마이크로피딩 및 기타 모든 기능이 포함된 복잡한 디자인은 없습니다.

명백한 질문을 예상하면 아니요, "덩굴손"은 테이프로 지워지지 않습니다. 물론 조만간 그는 그것을 지울 것입니다. 세상에 영원한 물질은 존재하지 않습니다. 그런데 닿는 부분에 폴리싱을 했는데 그렇게 세게 누르지는 않네요. 그런 다음 테이프를 두 겹으로 붙였습니다. 일반적으로 마모되는 데는 수년이 걸립니다. 솔루션은 매우 수용 가능하며 매력적으로 작동합니다.

위의 비디오에서는 여전히 메인 토글 스위치를 수동으로 전환합니다. 그러나 역방향 차단은 이미 와셔와 테이프로 만든 차단기를 사용하여 자체적으로 발생합니다.

디자인의 신뢰성은 나에게별로 즐겁지 않은 사실로 확인되었습니다 ... 어떻게, 어떻게 장치가 포함 된 패키지가 수령인에게 도착했을 때 장치를 고정하는 나사가 있다는 것이 밝혀졌습니다. 기어박스 축의 와셔가 떨어졌습니다! 우체국에서 소포를 어떻게 처리했는지 상상할 수 없습니다. 그런데 이 축 나사가 떨어져 나가도 상자는 계속해서 완벽하게 작동했습니다... 저는 전화로 이 나사를 제자리에 되돌리는 방법을 수령인에게 지시했습니다. 그가 이런 종류의 수리를 처리할 수 있기를 바랍니다. 하지만 불쾌한 결함이 드러났습니다. 그렇습니다... :-(

그 무렵에는 상자의 나머지 부분이 서로 접착되어 준비되었습니다. 기어박스와 배터리 팩이 부착된 상자 바닥을 벽에 붙이지 않았습니다. 장식용 금속 모서리로 고정하는 것으로 충분했습니다.

각 모서리에 두 개의 못을 조심스럽게 파 내면 바닥이 나머지 구조물과 자유롭게 분리됩니다.

세련된 뚜껑 경첩:

자, 여기 어딘가에서 레버를 풀 때 뚜껑을 올리는 양을 늘리면 좋겠다는 것을 깨달았습니다. 나는 레버에 "지느러미"를 그려서 잘라서 붙였습니다. 이 상승은 원하는 높이까지 증가합니다.

조금 더 장식하면 장치가 완전히 준비됩니다.


행동 중.




맨 위