RAZER CORE X CHROMA 에 있는 12V 전원 을 사용하는 허브 보드를 설계중이다. 새로 설계되는 허브에는 4개의 USB 2.0 포트, 이더넷 포트를 통한 오디오 출력, 오디오 엠프 회로, 전원 감지 및 오디오 엠프 컨트롤을 위한 MCU 가 포함되어있다. 전원 소스는 12V 와 5VSB 를 사용하며, MCU 만 5VSB 를 사용하고 나머지 장치들은 12V 를 사용하도록 설계하였다. 보드 고정의 경우 RAZER CORE X CHROMA 에 장착 되어있던 PCIE 허브 카드의 브라켓을 그대로 사용할수 있도록 설계하였다. 핀 헤더를 통해 BC-250 의 USB 2.0 포트에 납땜하여 사용할 목적으로 설계 되었다. USB 2.0 포트 하나를 희생해서 사용한다. USB 허브 전원은 BC-250 에서 가져오지 않고 내부 전원 회로에서 컨버팅 된 5V3A 전원을 커런트 리미트로 제한하여 사용하도록 설계하였다. 그리고 이 보드에는 BC-250 전원이 꺼졌는지 감지하여 먼저 제작 하였던 PSU 컨트롤러로 신호를 보내주는 회로가 설계되어 지난번에 우려 했던 PSU 가 꺼지지 못하는 상황을 방지 할 수 있다. 오디오 엠프를 넣은 것은 개인적인 욕심인데 스피커를 내장하기 위함이다. 엠프를 넣지 않았다면 사이즈도 더 작아지고 설계도 많이 쉬웠을 것이다. 가장 큰 걸림돌은 USB 포트와 이더넷 포트의 위치를 바꿀 수 없다는 것 이다. 아직 수정해야 할 부분이 많아서 먼저 설계했던 브라켓이 오기 전까지는 설계를 확정 할 수 없다.
Get link
Facebook
X
Pinterest
Email
Other Apps
[Raspberry Pi] - rc카 만들기 #6 카메라(Pi Cam)
Get link
Facebook
X
Pinterest
Email
Other Apps
-
#6 카메라(Pi Cam)
이번에는 로봇에 카메라를 달아 볼 것이다. 카메라의 쓰임은 원격 조종시 로봇 주변 환경의 탐사와, 동영상 혹은 스틸컷을 데이터로 남기기 위함이다. 또한 로봇에 장착된 AP에 접속한 기기들은 실시간 스트리밍 영상을 볼 수 있다. 카메라를 사용하시위해서는 환경 설정에서 카메라를 활성화 시켜주어야한다.
환경설정 - 인터페이스 옵션에 있다.
sudo raspi-config
코드는 듀얼 쇼크(DualShock4) 기준으로 작성되었다.
square 버튼다운시 스틸컷을 찍어 날짜 및 시간을 이름으로 외부 저장 장치에 저장된다.
스트리밍을 할 IP주소를 정해주어야 하는데 AP와 Raspberry Pi는 이더넷 으로 연결 되어있기 때문에 eth0의 아이피를 적어주면 된다.
다만 if의 이름은 스트링이 아닌 바이트코드 형식이기 때문에 python3를 사용한다면 앞쪽에 b를 붙여주어야 바이트코드로 인식 한다.
아래의 코드는 Raspberry Pi가 AP에 접속 될 때의 이더넷 아이피로 동영상을 전송한다.
스크립트를 따로 만들어 주어야 하는 이유는 지금까지 만든 메인 스크립트는 부팅시 자동으로 실행 되도록 앞서 설정해두었다. 문제는 메인 스크립트를 실행시 아래 코드가 포함 될 결우 아직 네트워크에 접속이 되지 않은 상태에서 IP를 불러오려고 하기때문에 인터럽트가 발생해 로봇은 작동하지 못한다.
from subprocess import call
import socket
import fcntl
import struct
def get_ip_address(ifname):
s = socket.socket(socket,AF_INET, socket,SOCK_DGRAM)
한국에 패스 오브 엑자일이 상륙하게 되면서 많은 사람들이 관심을 가지고 있다. 패스 오브 엑자일은 디아블로3가 기대에 미치지 못했던 플레이어들 사이에서는 디아블로2의 정신적 후속작으로 인정받고 있는 핵슬게임이다. 아직은 프리오픈 기간이지만 한국 서버가 생기면서 한국 플레이어들이 많아지고있다. 만약PC방과 같은 곳에서 한국 서버로 접속이 안되는 경우 내 문서 > my games 에 있는 Path of Exile 폴더를 지우고 실행하면된다. 채팅장에는 무수한 한글이 보이고 여러 질문들이 올라오는데 바로 아이템 획득 키인 F 키 이다. "아이템 획득키 어떻게 사용하는건가요?", "아이템이 먹어지지 않아요!", "아이템 어떻게 주워요?" "아이템 링크 어떻게 하나요?" 등 의 질문이 많이보인다. 사실 디아블로를 해본 사람들이라면 키 세팅도 크게 다르지 않기 때문에 적응하기에 쉽지만 그렇지 않은사람들도 있는것으로 보인다. 드롭된 아이템들을 확인할 수 있는 방법에는 크게 두 가지로 Alt 키 와 Z 키 가 있다. 우선 Alt 키 를 눌러 푸쉬온 방식으로 누르고 있을때만 드롭된 아이템들을 확인 하는 방법과 Z 키 를 이용해 푸쉬락 방식으로 한번 누르면 다음에 누를때 까지 강조효과가 지속되어 떨어져있는 아이템이나 오브젝트를 확인할 수 있는방법이 있다. 여기까지는 게임을 처음 접하는 사람들도 문제없이 인지하고 있다. 아이템 링크의 경우 패스 오브 엑자일에서는 Ctrl + Alt 를 누른상태에서 원하는 아이템을 클릭하면 채팅창에 올릴 수 있다. # 그럼 F 키는 어떻게 사용하나? 패스 오브 엑자일의 입력 설정 에서 확인해보면 F 키는 아이템 획득 키로 지정이 되어있다. 아마 이 옵션을 본 대다수의 플레이어가 F 키를 누르면 아이템이 인벤토리로 들어올 것으로 생각하는 것 같다. 이렇게 생각하는 원인은 요즘 온라인 게임들은 아주 편리하게 아이...
고장난 맥북의 패널을 모니터로 쓰기 위해 뜯어냈다. 분해하면서 대학시절 동거동락하던 추억들이 떠올랐지만 앞으로의 일 만 생각하기로 마음잡고 분해했다. 물론 애플 제품을 분해하는건 약간의 용기가 필요하다. 지금까지 분해해본 노트북 중에 커넥터가 가장 오밀 조밀하고 나사도 엄청 많고 심지어 크기도 너무 작다. 거기다 비싸기까지 하다. 이런 점들이 애플 제품의 분해를 망설이게 만드는 부분이다. 분해 디스플레이를 완전이 뜯어내는건 처음이었기 때문에 디스플레이 교체 영상 을 참고 했다. 히팅건은 없고 대신 가스 인두기를 사용해 접착 부분을 느슨하게 만들고 기타 피크를 밀어넣으니 쉽게 제거 할 수 있었다. 모니터 부분에서 제거 할 부분은 카메라와 안테나 케이블 그리고 lvds 케이블이다. 이 곳의 나사들은 매우 작고 연약하기 때문에 힘 조절을 잘 해야 한다. 디스플레이를 분해한 이유는 패널의 명칭과 lvds 커넥터를 확인하기 위함이였다. 맥북 프로 15-인치, Mid 2010 의 패널 이름은 LP154WP4-TLA1이고 커넥터는 20474-040E-12 이다. 난관의 시작 여기서 부터가 난관이였다. 국내에서 해당 패널에 맞는 AD보드와 케이블을 세트로 구매하려고 했지만 커넥터 핀배열을 직접 해야한다는 답변만 받을 수 있었다. 어쩔수 없이 직접 해보려고 데이타 시트도 찾고 핀배열도 찾아보니 해볼만 한 것 처럼 보였다. 그랬는데..아무리 봐도 이상하다. 내가 이해 못하는건가? 분명 데이타 시트에는 40핀이라 되어있는데 연결되어있는 선들은 40가닥이 아니네? 그라운드가 묶여있는건가? 그리고 어디가 1번이라는 건지 생각 할 수록 혼란스러웠다. 이 후에 케이블을 잘라보고나서야 이해 할 수 있었다. 케이블을 자세히 보면 다른 선들보다 두꺼운 선들이 있다. 그 녀석들의 피복을 벗겨보면 안쪽에 더 작은 선들이 두 가닥이 나온다. 이 두꺼운 선들은 배열상 데이터선으로 보인다. 두 가닥 정도 작업하다가...
아날로그 자이로 센서의 값을 블루투스 HC-06를 통해 컴퓨터로 전달 받을 수 있게 하려고 한다. 블루투스로 통신을 하기 위해서 지난번과 같은 문제 를 방지하기 위해 HC-06 의 baud rate를 115200로 변경해야한다. 115200로 사용해야 정상적으로 업로드가 된다. baud rate 수정 우선 아래의 코드를 아두이노에 업로드한다. #include SoftwareSerial BTSerial( 2 , 3 ); / / Tx:Digital 2pin, Rx:Digital 3pin void setup() { Serial.begin( 9600 ); BTSerial.begin( 9600 ); Serial.println( "Annajin AT" ); } void loop() { if (BTSerial.available()) Serial.write(BTSerial.read()); if (Serial.available()) BTSerial.write(Serial.read()); } Colored by Color Scripter cs AT 커맨드를 순서대로 입력한다. AT+BAUD8 을 입력하면 baud rate 가 115200로 바뀐다 다시 9600으로 바꾸려면 다음과 같이 수정하고 AT+BAUD4 를 입력하면 된다. void setup() { Serial.begin( 115200 ); BTSerial.begin(...
Comments
Post a Comment
좋은하루되세요. ^^