BLE (22) 썸네일형 리스트형 [Noise Detector] nRF51 (2) : Noise Detector Service 구성 BLE(Bluetooth Low Energy) 프로토콜 중 서비스에 대해 간단히 설명하겠습니다. BLE 프로토콜에 대해 하나도 모르면 이해할 수 없지만, 이전 포스트에서 추천한 서적을 읽고, BLE 프로토콜을 이해하기 위해 노력했다면 약간 정리된 듯한 느낌을 받을 수 있을지도.. 모르겠습니다. BLE를 시작하는 개발자들이 BLE 프로토콜에 대한 약간의 느낌이라도 얻을 수 있으면 좋겠네요. BLE 프로토콜에서 서비스는 자바에서 추상 클래스, 특성(Characteristic)은 서비스의 서브 클래스와 비슷한 개념입니다. 그리고 각 특성의 디스크립터와 값 속성은 서브 클래스의 필드와 비슷한 개념입니다. 이것들은 BLE 스택에서 GATT 프로파일(Generic Attribute Profile) 위에 위치하기 때.. [Noise Detector] nRF51 (1) : 레이어 구성 노르딕은 MCU에 BLE(Bluetooth Low Energy) 모듈 자체를 내장하는 것이 아니라, BLE 프로토콜 스택을 구성할 때, 소프트웨어로는 구현하기 힘들거나 부담되는 작업인 RNG, ECB(암호화 동작 수행) 등을 수행하는 페리페럴들과 2.4GHz 주파수를 송수신하는 RADIO 페리페럴을 사용하여 BLE 통신을 구현합니다. 이 페리페럴들을 이용하여 자신만의 2.4GHz 무선 통신 스택을 만들 수도 있지만, 아직은 너무나 먼 길입니다. 일단 BLE 시스템을 제대로 구현해 보기로 했습니다. 개발 보드로는 PCA10028을 사용했으며, 이 보드는 J-Link와 nRF51422가 내장되어 있습니다. Mouser에서 39달러에 구매할 수 있네요. 단 50달러 미만은 배송비가 발생합니다. 이 보드보다는 .. [Noise Detector] 회로 (5) : 나머지 회로 나머지 회로는 모듈을 사용했습니다. 알리익스프레스에서 TP4056은 DIP 타입의 칩으로 따로 팔지 않았고, nRF51822는 만능기판에 부착하기는 거의 불가능하고 어떻게 된다고 해도 안테나를 만들 수 없었기 때문입니다. 각 모듈의 호로도는 링크해 두었습니다. nRF51822 모듈(압축파일의 PCA10028_Schematic_And_PCB.pdf 2페이지, 여기서 X3 부분 제거)과 주변 회로 별거 없습니다. 연결중, 연결 완료 상태를 나타내기위한 LED1과 연결을 제어하기 위한 S1 스위치만 있을 뿐입니다. 빨간색 네모 박스의 C는 이전 포스트 문제점1에서 언급했던 nRF51이 라디오를 사용할 때 전압이 감소하는 문제를 방지하기 위한 커패시터입니다. 지금은 제거해 놓은 상태이며, 주문해 놓은 2200u.. [Noise Detector] 회로 (4) : 배터리 잔량 측정 회로 관련 링크 2017/12/17 - [BLE - Nordic/Noise Detector] - Noise Detector 3단계 - nRF51 (5) : 배터리 잔량 계산 nRF51 ADC를 이용해 배터리 잔량을 측정하는 방법은 이 링크와 PDF를 참조했습니다. nRF51 ADC의 내부 저항, 전압때문에 R7과 R8 전압 분배기에 의한 이론적인 전압이 측정되지 않습니다. 내부 저항은 ADC 프리스케일 설정에 따라 달라지지만 최대 390KΩ입니다. 3.3MΩ보다 매우 작기 때문에 ADC가 켜지면 거의 모든 전압이 R7에 걸려버립니다. 즉, 측정 전압이 낮아집니다. 이것을 영구적으로 방지할 수는 없지만, ADC되는 순간만이라도 전압이 떨어지는 것을 막기 위해 커패시터를 사용하고, 위에 있는 두개의 자료는 이 커.. [Noise Detector] 회로 (3) : 증폭 회로 문제점2 회로도 문제점 P0.03과 오실로스코프 프로브를 병렬로 연결해서 동시에 측정하면, 아무 소리도 없을 때 예상대로 0V 부근에서 살짝 왔다갔다 합니다. 하지만 아래 동영상처럼 중간에 프로브를 제거하면 마치 바이어스된 것처럼 더 큰 전압이 탐지됩니다. 해결 방법 아직 원인을 모르겠습니다. 커패시터를 통과한 신호는 직류전압이 없어야 합니다. 즉, 바이어스 전압이 항상 0이어야 합니다. 그럼에도 바이어스된 것처럼 측정된다는 것은 그 이후 과정에 문제가 있지 않을까 생각해봅니다. 예를들어 ADC의 내부 저항 또는 내부 레퍼런스 전압 등.. 하지만 임시방편으로 해결책은 찾을 수 있었습니다. 오실로스코프가 어떤 지점의 전압을 측정할 때 오실로스코프의 내부 저항이 그 지점과 병렬로 연결됩니다. 그래서 오실로스코프의 내.. [Noise Detector] 회로 (2) : 증폭 회로 문제점1 회로도 문제점 이전 포스트에서 오실로스코프 파형을 보면 뭔가 이상하다고 생각했을 수도 있습니다. 주기적으로 튀는 현상이 발생하는 것인데요. 이것은 nRF51 칩이 라디오를 사용할 때 10-20mV의 미세한 전압 감소가 나타나는데, 이것이 증폭되어 ADC에도 나타나는 현상입니다. 다음은 nRF51전원단에 220uF 커패시터 없이 연결 후 200ms마다 브로드캐스트를 했을 때 VCC 전압(하늘색, 위)과 증폭회로 출력 전압(노란색, 아래)입니다. 확대해서 보면 VCC전압은 큰 네모 한칸당 10mV입니다. 사진에 나오지 않지만 증폭회로 출력 전압은 한칸당 1V입니다. VCC 전압도 1V 단위로 측정하면 육안으로 관찰하기 힘든 정도의 미세한 감소폭입니다. 하지만 1000배 증폭회로를 거치면서 증폭회로의 출력에 .. [Noise Detector] 회로 (1) : 증폭 회로 & 구성요소에 따른 파형 제 회로에 대한 지식은 회로도를 보고 신호의 흐름만 파악할 수 있는 정도이기 때문에 회로 관련 자료는 가볍게 참고만 했으면 좋겠습니다. 이론적인 부분을 현실에 최대한 구현하려고 노력했지만 많은 부분을 오실레이터를 사용하여 결과를 관찰하는 방법으로 구현했습니다. 참고로 툴은 이글을 사용했고 없는 부품은 라이브러리로 만든게 아니라 그림판으로 이름만 변경했습니다. 이글 툴은 이번에 처음 써봤는데 확대, 축소, 화면이동이 너무 불편해서 다시 쓸 일은 없을거 같네요. 부품 대부분의 부품은 모두 알리익스프레스에서 구매했습니다.무료배송에 가격도 저렴했기 때문입니다. LM358 저항 IRF9540N (P-ch MOSFET) 콘덴서 마이크 폴리에스터 필름 커패시터 3.7V 리튬 배터리 TP4056 충전 모듈 nRF518.. [Noise Detector] 그래픽 모듈 (7) : 예제 소스 코드 GitHub 저작권 문구는 노르딕의 nRF-Toolbox 앱의 저작권 문구를 거의 그대로 적용했습니다. Copyright (c) 2017, JoonDong All rights reserved. Copyright holder's blog : http://joondong.tistory.com Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 소스와 바이너리 형태로 재배포와 사용은 다음 조건들을 만족한 경우에만 허용됩니다.Redistributions of source code must retain the a.. 이전 1 2 3 다음