본문 바로가기

Study502

CAN제품 개발시 ID 필터링의 중요성 Can 통신의 경우 bus형태의 통신라인으로 연결되어 있습니다. 그렇다보니 한 디바이스가 보낸 데이터를 모든 디바이스에서 수신받게 됩니다. 이때에 자기가 사용하는 것과 사용하지 않는 MSG ID를 적절히 필터링하여 사용하여야 합니다. 필터링의 방법으로는 ID LIST방식과 ID MASK방식이 있는데, ID LIST는 받을 ID 하나씩 일일이 적어서 필터링하며, ID MASK의 경우 연속된 ID를 필터링할 경우 범위를 지정하여 필터링 합니다. STM시리즈의 CAN 필터링 방법은 이곳을 눌러 확인하실 수 있습니다. ID를 필터링하지 않을 경우 받은 데이터를 처리하지 않을 시 잘못하면 받은 메세지 ID에 내가 보내는 데이터를 넣어서 보내거나 엉뚱한 데이터를 보내게 되어 통신상에 심각한 오류를 일으킬 수 있습니.. 2021. 4. 27.
BMS(Battery Management System)의 Battery SOC 계산방법 배터리의 SoC는 State of Charge의 약자로 배터리의 용량을 나타냅니다. 배터리의 용량을 측정하는 방법으로는 크게 2가지를 많이 사용하는데 전류적산법과 OCV방식을 사용합니다. 1. 전류적산법 전류 적산법은 최초의 전류용량을 기준으로 실제로 사용되는 전류값을 측정하여 계산을 하게됩니다. 위 식을 역해하면 SoC=( 1- ( 사용한 전류량 X 사용한 시간 / 총 전류량 ) ) X 100% 입니다. 위 식은 보통 방전시(배터리 사용시) 계산방법으로 사용됩니다. 2. OCV(Open Circuit Voltage) 측정법 OCV는 회로에 흐르는 전압을 측정하여 SoC를 측정하는 방법입니다. 배터리를 방전후 방치하면 아래 그림과 같이 배터리용량이 약간 상승하게 됩니다. 위 그림의 빨간부분은 방치 후 일.. 2021. 4. 22.
네트워크 연결 확인 (NetworkInfo Deprecated 대체) 이전에 쓰던 코드는 NetworkInfo를 사용하여 네트워크의 종류를 알아내는 코드였습니다. ConnectivityManager manager = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo info; try{ info=manager.getActiveNetworkInfo(); }catch (NullPointerException e){ info=null; } if(info!=null){ //인터넷 됨 }else{ //인터넷 안됨 } 하지만 API버전이 올라가면서 Deprecated되어 대체 메소드로 대체하였습니다. ConnectivityManager manager = (ConnectivityManager)g.. 2021. 3. 29.
종단저항의 중요성 종단저항은 보통 1대 다 통신의 경우에 달게 됩니다. 종단저항을 다는 이유는 통신선로의 양 끝점에 일정 전류를 흘려 신호의 반사가 일어나지 않도록 합니다. 그래서 종단저항은 통신선로의 양 끝단점에 각각 설치를 하게 됩니다. 종단저항 값은 120옴을 양끝단에 달아 120옴이 병렬로 2개 즉 60옴정도가 되도록 합니다. 만약 종단저항을 더 달게 되면 어떻게 될까요? 위 사진을 보시면 2.5V를 중심으로 3.5V와 1.5V 를 왔다 갔다하면서 High Low를 만들어 냅니다. 위 사진에서 신호가 같은전압이면 High 다른전압이면 Low입니다. 위 사진의 경우 종단저항 120옴이 3개가 병렬로 연결되어 총 저항값이 40옴이 나오는 경우입니다. 파형을 보시면 종단저항 60옴일때보다 신호 레벨이 많이 낮아졌습니다... 2021. 3. 10.
NFC통신 NFC 통신은 13.56Mhz 대역의 RFID통신을 기반으로 하는 근접 통신입니다. NFC 통신 모드는 Read/Write, Card Emulation, Passive Peer to Peer, Active Peer to Peer등이 있습니다. 통신 속도는 106kbps, 212kbps, 424kbps, 848kbps로 되어있습니다. 프로토콜의 종류도 아래 그림과 같이 다양합니다. NFC의 통신 모드를 보면 Read/Write 모드는 NFC Tag를 읽고 쓰는 모드이고 Card Emulation 모드는 NFC Tag의 형태로 사용되는 모드입니다. Peer to Peer 의 경우 서로 데이터를 교환하는 모드인데 Active Peer to Peer와 Passive Peer to Peer의 경우 통신을 하는 방.. 2021. 2. 19.
스로틀레버의 원리 스로틀레버는 오토바이와 전기자전거, 전동스쿠터등에서 많이 쓰입니다. 속도를 조절하는 용도로 주로 사용되는데, 분해를 해보면 선이 3가닥이 있습니다. 스로틀레버의 3가닥중 2가닥은 입력전원입니다. 보통 5V(RED), GND(BLACK)가 됩니다. 그리고 나머지 한가닥(GREEN)은 출력신호입니다. 출력신호는 레버의 돌아가는 정도에 따라 입력된 5V를 0V부터 비례해 보냅니다. 위 사진의 파란색이 입력전압이고, 노란색이 출력전압입니다. 내부를 뜯어보면 위와같은 모습이 나오는데 오른쪽 제일끝에 홀센서가 있습니다. 그리고 스로틀 핸들쪽에 자석이 있어 핸들이 돌아가는정도에 따라 홀센서의 출력값을 변화시켜 줍니다. 이상 스로틀 레버의 간단한 원리였습니다. 2021. 1. 26.

인기글