obniz에 infineon의 기압 센서를 연결해 보았습니다.

LINE Clova의 해커슨에게 기술 지원으로 왔습니다만, 어른이 infineon씨로 기압 센서(DPS310)를 가져왔으므로, obniz와 연결해 보았습니다.

↑ 이웃

혼자 Hackason입니다.
이제 온라인에서 기압을 측정할 수 있습니다! Clova와의 궁합도 확실합니다.

때때로 초기화에 실패하거나 때로는 데이터가 오기까지 시간이 걸리거나 합니다만, Hackason에서 구현할 수 있던 레벨로서는 제기점이 아닐까요?

회로



obniz에 전부 직접 부착으로 할 수 있어요! 라고 말하고 싶었습니다만.
3.3V의 전원을 공급할 수 없어 5V에서 3V로 분압합니다.
(obniz는 3.3v는 1mA까지밖에 출력할 수 없습니다만, 5V는 1A까지 낼 수 있습니다)

저항이 없었기 때문에 처음에는 가변 저항으로 분압했습니다.
(다음날, 제대로 저항을 가져와서 바꿨습니다)



↑분압만을 위한 브레드보드

당연히 테스터는 가지고 있지 않기 때문에 obniz의 AD 모니터를 보면서 가변 저항을 조금 바꾸어 간다. . . 섬세한 작업입니다.


↑io11(가장 오른쪽)에 5V를 출력해, 그것을 분압한 결과의 io10(그것이 되어)를 보면서 가변 저항을 돌립니다. 사진이라면 2.1V. . . . 이것으로 센서가 움직이지 않는다!

이런, 지금 있는 것으로 어떻게든 한다! 그것은 Hackason의 묘미입니다.

연결된 핀은 모두 4개
- 전원 (5V 출력을 3.3V로 분압)
- GND
- SDA
- SCL

I2C이므로 연결 핀이 적고 쉽고 좋습니다.

프로그램



다행히도 arduino의 프로그램이 있다는 것이므로, 그것을 javascript에 이식하는 형태로 썼습니다.
고성능 센서이므로 설정 항목이 많이 있고 초기화 항목도 많이 ...!

칩 안에 캘리브레이션 데이터가 들어있어 온도에 의한 계측 오차가 없도록 온도 센서도 들어가거나 등 정밀도의 조건이 대단합니다

사고 팔고하면서 어떻게든 움직였습니다.
미세한 부분이 다른지, 혹은 가변 저항에 의한 전원의 흔들림이 있는지, 가끔 초기화에 실패하는 것은 향후의 과제군요

소스 코드는 여기

 결과



데이터 취득이 가능했습니다!
상태 타고 그래프화까지 했습니다.



기압 센서는별로 사용한 적이 없었지만, 친숙한 데이터이므로 IoT로서도 활용을 많이 할 수 있을 것 같네요

좋은 웹페이지 즐겨찾기