물 한 방울 규모로 맛있는 커피를 우려고 합니다! -그 1
10741 단어 RaspberryPi센서
※ 올해도 순조롭게 틀을 잡았으니 잠시 쉬어가자는 이야기를 하세요.
입문
안녕하세요.@yagizo.나는 우리 회사의 서비스 개발을 책임지는 일반 엔지니어다.
저는 회사에서 커피숍(※15시경 졸린 시간에 제멋대로 물을 끓여 커피를 타며 동료와 잡담을 나누는 회사 비공인 활동단체 w)에 참여했지만 맛있는 커피를 잘 타는 카리스마 있는 바리스타가 있어 술을 전문으로 마시는 사람이 되었습니다.나는 기술이 진보하지 않는 고민이 좀 있다.
그때
물방울 규모의 요점은 시간과 양을 측정하는 것이고, 더 맛있는 커피를 위해서는 온도도 중요하기 때문에 "이렇게 하면 (요즘은 쓸모없다) 드롭 미터 저렴하게 간단하게 만들 수 있지 않을까요? 이런 간단한 생각으로 맛있는 커피를 내 손으로 담그고 싶어요!!!"그런 욕심으로 시작한 기획.
커피의 붉은 단락으로 즐길 수 있다면 좋겠다.
RaspberryPi
↑
이번 기획의 전모
바로 준비하세요!
고무관 설치
"그럼, 일을 시작하자!"염소상은 의욕이 넘치지만, 그 전에 라즈파의 설치부터 시작해야 하는 상황을 알아차렸어요.
(일단 라즈베리 파이를 설정해야 하는데 어? 많이 잊어버렸어...)
응, 아무래도 (참고: , 기본 설정이 끝나면 무게를 재는 센서 설치에 들어갈 준비를 하세요.
이번에 구입한 상품입니다.
숨겨진 치즈파이를 제외하고 이번에 산 물건은 다음과 같다.
잊어버린 사람을 위한 라즈베리 파이 설정
한 마디로 하면 시중에서 파는 물방울 규모를 사는 것보다 싸게 도입할 수 있는 조건은 명확하다(실제로는 성능이 좋으려면 쓸데없는 물건을 사는 것은 가족을 속이는 것이다).
"드디어 일을 시작했어요..."전에 조금, 계획의 뒷면!
(예민한 사람은 제목을 봤다고 생각할 수도 있겠지? 아마 맞는 것 같아. 그 다음에'에이'라고 말하기 전에 변명의 한 토막을 넣어라.)
작년 행사 달력에는 시간이 부족해서 이번에는 한 달 전부터 준비했다.기획을 정리하고 부품을 주문한 것도 11/18입니다.여유로운 시작입니다.
만전을 기하는 체제!!
..."며칠 동안 와야 할 부품이 안 오는데...? 아마존을 거쳐 주문 후 바로 발송할 거예요. 내일 올 거예요"x시간...방심하다.두 번이나 도착 날짜가 바뀌었는데, 눈치채면 그건 입고일까지 일주일밖에 안 남았어요.
(야단났어. 이상해, 평범한 패턴이야)
반은 화가 나서 판매상에게 예의 바르고 친절하게 물었다.전달이 안 돼요.결국 주말에는 추엽원에 부품을 사러 가야 했다.그리고 기대한 대로 도착했습니다.같은 날아, 이미 뭐야.
(큰일났다. 불평해서 신문을 썼어. 아니, 정말 못 참겠어)
다시 정신 차리고 계속하세요.
중량계 사용
계량계를 만드는 데 필요한 부품은 "인두"과 "전자 천평 부하 센서"(전자가 하중을 측정하는 장치에서 이 정보를 확대하고 숫자로 변환하는 모듈, 예를 들어 후자) 이다.
노출된 배선이라면 사용하기 힘들기 때문에 재킷 바느질(수술칼)을 용접하고 그 위에 바늘을 설치하면 사용하기 편합니다(간단하게 썼지만 용접에 익숙하지 않아서 소박하게 시간이 있었군요... 그리고 바늘로 손가락에 피를 흘리고... 눈물이 날 것 같았지만 참았습니다).
저울의 기초는 100엔점에서 산 패션 트레이다.테이블은 Trancsend의 SSD를 구매할 때 5인치 받침대 설치용 패널이 붙어 있어서 유용했다.
배선은 선인들의 지혜를 따라 다음과 같은 느낌으로 연결된다.
압력 센서(HX711)
솔직히 일이 이렇게 힘들 줄은 몰랐어요.
hx711py 설정
우선 센서로부터 데이터를 얻을 수 있어야 한다. 라즈파이용 HX711 라이브러리에 대한 정보가 발견돼 이를 이용해 앱을 만들기로 했다.
$ git clone https://github.com/tatobari/hx711py
:
$ cd hx711py
$ sudo python setup.py install
running install
running bdist_egg
running egg_info
creating hx711.egg-info
writing requirements to hx711.egg-info/requires.txt
writing hx711.egg-info/PKG-INFO
writing top-level names to hx711.egg-info/top_level.txt
writing dependency_links to hx711.egg-info/dependency_links.txt
writing manifest file 'hx711.egg-info/SOURCES.txt'
reading manifest file 'hx711.egg-info/SOURCES.txt'
writing manifest file 'hx711.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-armv7l/egg
running install_lib
running build_py
creating build
creating build/lib.linux-armv7l-2.7
copying hx711.py -> build/lib.linux-armv7l-2.7
creating build/bdist.linux-armv7l
creating build/bdist.linux-armv7l/egg
copying build/lib.linux-armv7l-2.7/hx711.py -> build/bdist.linux-armv7l/egg
byte-compiling build/bdist.linux-armv7l/egg/hx711.py to hx711.pyc
creating build/bdist.linux-armv7l/egg/EGG-INFO
copying hx711.egg-info/PKG-INFO -> build/bdist.linux-armv7l/egg/EGG-INFO
copying hx711.egg-info/SOURCES.txt -> build/bdist.linux-armv7l/egg/EGG-INFO
copying hx711.egg-info/dependency_links.txt -> build/bdist.linux-armv7l/egg/EGG-INFO
copying hx711.egg-info/requires.txt -> build/bdist.linux-armv7l/egg/EGG-INFO
copying hx711.egg-info/top_level.txt -> build/bdist.linux-armv7l/egg/EGG-INFO
zip_safe flag not set; analyzing archive contents...
creating dist
creating 'dist/hx711-0.1-py2.7.egg' and adding 'build/bdist.linux-armv7l/egg' to it
removing 'build/bdist.linux-armv7l/egg' (and everything under it)
Processing hx711-0.1-py2.7.egg
Removing /usr/local/lib/python2.7/dist-packages/hx711-0.1-py2.7.egg
Copying hx711-0.1-py2.7.egg to /usr/local/lib/python2.7/dist-packages
hx711 0.1 is already the active version in easy-install.pth
Installed /usr/local/lib/python2.7/dist-packages/hx711-0.1-py2.7.egg
Processing dependencies for hx711==0.1
Searching for numpy==1.12.1
Best match: numpy 1.12.1
Adding numpy 1.12.1 to easy-install.pth file
Using /usr/lib/python2.7/dist-packages
Searching for RPi.GPIO==0.6.3
Best match: RPi.GPIO 0.6.3
Adding RPi.GPIO 0.6.3 to easy-install.pth file
Using /usr/lib/python2.7/dist-packages
Finished processing dependencies for hx711==0.1
동작 확인
한마디로 hx711py에 대한 example.동작 여부를 py로 확인합니다.
$ python example.py
-8388479
-8388479
-8388607
-8388479
-8388479
-8388479
-8388607
-8388607
^CCleaning...
Bye!
움직이는 것 같아.사실 여기서부터 무게 조절 작업이 일어날 것 같은데 미뤄졌어요.시간이 없기 때문에 다음 센서를 설치해야 합니다.
온도 센서 사용
온도 측정에 필요한 부품은 "hx711py"과 저항 1개(4.7kΩ) 입니다.
노출된 배선이라면 DS18B20 온도 센서 찌르지 않아 재킷 바늘(수컷)을 용접했다.
배선은 이런 느낌입니다.
손바닥
사다리꼴 도면 측면 설정하기
1-Wire라는 인터페이스를 유효화하지만 raspi-config를 통해서만 유효화하는 것은 순조롭지 않은 것 같습니다.해결 방법은
/boot/config.txt
에 다음과 같은 설정을 추가한다.pullup=on
의 설정이 중요한 것 같다.# for DS18B20
dtoverlay=w1-gpio,pullup=on
설치 후 고무 파이를 다시 시작합니다.동작 확인
1-Wire를 활성화하면
/sys/bus
산하에 w1
라는 디렉토리가 나타납니다.아래devices
디렉터리에는 이번에 추가된 센서 정보(디렉터리)가 있어야 합니다.내 경우, 28-0213134b30aa
이 표지부는 분배되었다. (모든 설비가 고유한 것 같고 변화가 없는 것 같다.) 그 중의 w1_슬레이브를 통해 센서가 얻은 정보를 볼 수 있으니 확인해야 한다.$ cat /sys/bus/w1/devices/28-0213134b30aa/w1_slave
b8 00 4b 46 7f ff 0c 10 8c : crc=8c YES
b8 00 4b 46 7f ff 0c 10 8c t=11500
그중t=11500
에서 얻은 온도.1000의 값을 온도(섭씨)로 나누기 때문에 이때는 11.5 ℃이다."요즘 방이 추운데, 원래 추웠어요"작은 매듭
이번에는 센서 설정(부품 구매 및 작업, 동작 확인)이 진행됐다.센서를 쉽게 설치해서 데이터를 얻을 수 있어서 정말 좋아요.
그럼 다음부터는 드디어 앱을 만들 거예요.
제작된 저울에서 데이터를 얻어 시각적 무게의 시간 변화에 들어가는 구조의 설치.
(갑자기 BrainPad 광고 달력 첫 연재 기획으로 변신)
더 애틋한 이유
사실 나는 끝까지 하고 싶다.평소의 행동 때문인지 시간을 예쁘게 잘못 읽었더니 늦었다.
그렇긴 하지만 겨울방학 숙제로 물방울 규모를 꼭 완성하세요.
마지막까지 읽고 실망하신 여러분, 다음 응용 프로그램 편을 기다리세요!!
참고 자료
다음은 이번 기획을 완성할 때 참고한 선인들의 지혜.그냥 고마워요.
Reference
이 문제에 관하여(물 한 방울 규모로 맛있는 커피를 우려고 합니다! -그 1), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/yagizo/items/afd5979e153d9285f209텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)