728x90

ssh 접속한건 좋지만

 

나중에 카메라 스트리밍도할건데 데스크탑 환경에서 보면 좋을것같습니다.

 

 

주미가 파이제로이니

 

 

파이제로에서 vnc와 x11을 돌릴수 있는지 검색해보았습니다.

 

* x11 : x윈도우라 부르며, 리눅스 GUI 서버. x11 서비스가 동작해야 GUI환경에서 작업 할수 있습니다.

* ref : https://joone.net/2018/07/24/23-x11%EC%9D%98-%ED%83%84%EC%83%9D/

   => X11의 탄생 만화

* vnc : x11이 GUI 서버라면, vnc는 ssh의 그래픽 버전. vnc 서버가 동작하고 있어야 외부에서 그래픽으로 사용가능

 

 

 

 

 

다행이 ssh는 처음부터 허용되어있지만

 

라즈비안에서 VNC를 사용하려면 일단 enable부터 해주어야 합니다.

 

주미에 ssh 접속한 후 따라해주세요

 

 

 

 

VNC를 enable 해주고

 

그러면 vnc와 x11 설치 과정이 진행됩니다.

* 설치할때 녹화본. 해상도가 좋지 않습니다..

설치 완료후 VNC Server is enabled가 뜹니다.

 

 

 

 

 

 

finish를 하면 리부트 하라고 시킵니다.

 

 

리부트해주면 끊깁니다.

 

 

 

주미가 리부트되면 다시 ssh 접속해보고,

 

 

 

 

이제 vnc 설치도 끝났으니 vncviewer로 확인해봅시다.

 

 

vncviewer 윈도우버전 링크

https://www.realvnc.com/en/connect/download/viewer/windows/

 

 

주미 주소를 넣고 엔터하면

 

 

 

VNC 서버 접속할 유저네임과 패스워드를 입력하라고 합니다.

 

우린 디폴트대로 pi / pi로 해줍시다.

 

 

 

 

이제 vnc 서버가 돌아가고, 접속했으니 화면이 켜질것 같지만

 

vncserver만 돌아가지 x11 데스크탑이 돌아가고 있지 않아 아래 같은 화면이 나옵니다.

 

 

화면을 띄우려면 다시 파이로 돌아가서 다음 명령어를 쳐줍시다.

- ref: https://m.blog.naver.com/alkydes/220955624862

 

 

1024x768 해상도의 가상 데스크탑 생성

 

 

해당 해상도의 가상 데스크탑이 만들어졌습니다.

 

이제 192.168.43.152:1로 vncviewer에서 들어가면 되겠습니다.

 

 

 

 

192.168.43.152의 5901번 포트로 접속하면 ..

 

 

 

주미의 가상 데스크탑 화면이 켜집니다.

 

 

 

여기서 끝내기 아쉬우니 잠깐 웹캠 캠처하고 마무리하겠습니다.

 

터미널 열고

 

 

다음 링크를 참고해서 한번 캡처해주고

https://wikidocs.net/3180

 

 

raspistill -o tmp.jpg

 

홈디렉토리에 보면 tmp.jpg 파일이 생겨있습니다.

 

 

캡처한 결과

 

 

 

 

 

 

300x250

'로봇 > 로봇' 카테고리의 다른 글

zumi - 4. 자이로 프린팅  (0) 2020.08.24
zumi - 3. 주미 samba 설치  (0) 2020.08.24
zumi - 1. 주미 ssh 접속하기  (0) 2020.08.23
파이썬 로보틱스 - SLAM, 확장 칼만 필터  (0) 2020.07.06
파이썬 로보틱스 - SLAM 복습  (0) 2020.07.06
728x90

최근 로보링크사의 주미 파워 유저에 선정되서

 

가끔 주미를 가지고 놀면서 컴퓨터 비전 분야를 정리해보려고 합니다.

 

 

 

 

 

로보링크 주미 소개

 

http://roboshop.co.kr/product/%EC%A3%BC%EB%AF%B8/465/

 

 

 

 

 

주미가 교육용 로봇인 만큼

 

블록 코딩, 파이썬으로 사용 가능하지만

 

 

 

내부에는 파이제로, 관성 센서, 카메라 등이 있다고 하니

 

필터링이나 컴퓨터 비전 공부하는데 사용해보려고 합니다.

 

 

 

 

주피터 노트북에서 해도 되지만 우선 ssh가 되는지 보겠습니다.

 

 

검색해보니 된다고 하내요.

 

 

https://forum.robolink.com/topic/388/ssh-access-to-zumi-raspberry-pi-zero-few-more-queries/7

 

 

 

 

 

 

일단 이제 주미를 켜고, 주미에 들어가봅시다.

* 녹화를 잘못해서 해상도가 좋지 않습니다..

 

 

 

 

처음 주미에 접속하면 

zumidashboard.ai로 들어가라는데요.

 

대시보드 사이트에 주미와 연결할 공유기를 선택하고, 비번도 입력해줍시다.

 

 

아직 주미는 인터넷에 연결되어있지 않은 상태지만

 

공유기에 연결되었습니다.

 

 

 

 

 

주미 대시보드 메인화면

 

 

 

이제 주미에서 나와 다시 원래 공유기(핫스팟)으로 돌아옵시다.

 

 

주미에 SSH 접속하려면

 

주미 내부 IP 주소를 알아야하는데

 

공유기에 연결했다면 

 

192.168.0.1에 들어가서 주미의 아이피를 쉽게 확인할수 있겠지만 

 

https://ilikesan.com/entry/iptime-%ED%95%A0%EB%8B%B9-%EB%90%9C-%EB%82%B4%EB%B6%80-%EC%95%84%EC%9D%B4%ED%94%BC-%EC%95%8C%EC%95%84%EB%82%B4%EA%B8%B0

 

 

 

공유기 대신 핫스팟을 사용하다보니

 

공유기 웹페이지 대신 다른 방법을 찾아야합니다.

 

 

같은 네트워크 대역에서 접속한 호스트들과 포트 등 정보를 스캔해주는 프로그램인

 

nmap을 사용하겠습니다.

 

 

 

 

nmap 홈페이지에서 다운, 설치부터 해주고

 

 

 

 

다음 링크에서 nmap 사용법을 참고해서 쓰겠습니다.

 

https://awesometic.tistory.com/117

 

 

일단 같은 네트워크에 존재하는 호스트들을 스캔하기전에 내 IP 주소부터 CMD에서 확인해줍시다

 

 

 

 

 

192.168.43.29이니

 

192.168.43.0 ~ 192.168.43.255 사이에 접속가능한 호스트들이 존재하는지 확인하면 되겠습니다.

 

 

 

 

 

 

192.168.43.0 ~ 192.168.43.255 사이에 접속가능한 호스트들이 존재하는지 확인하면 되겠습니다.

 

이 링크를 참고해서

nmap -sL 확인할 IP대역

https://awesometic.tistory.com/117

 

 

 

잠시 기다려주면

 

모든 주소들 스캔이 완료되었습니다.

 

 

 

 

 

주미가 helloworld(핫스팟)에 192.168.43.152 주소를 할당받았내요.

 

 

 

 

 

주미에 접속하기 전에 nmap -A 옵션으로 자세히 한번봅시다.

 

 

 

뭐가 많이 나오는데

 

ssh 22번 포트와 http 80번 포트가 열려있다고 하내요

 

 

 

이제 ssh 접속을 해봅시다.

 

일단 putty 설치해서 열어주세요.

https://www.putty.org/

 

 

방금 확인한 주미 주소가 192.168.43.152였으니 호스트 지정해서 들어가봅시다

 

 

 

 

아까 검색해보니 아이디 pi/ 비번도 pi라고 합니다.

 

이렇게 접속해주세요

 

 

주미 ssh 접속

 

 

 

 

 

 

300x250
728x90

컴퓨터로 수학 문제를 풀때

 

대부분의 대학교에서는 MATLAB으로 가르치는데

 

매트랩이 그만큼 잘 되어있기는 하지만 학교 학생이 아닌 이상 라이센스 때문에 쓰기 힘들다

 

 

 

 

매트랩 말고 매트랩 비슷한 무료 소프트웨어가 있다고 하지만

 

제대로 찾아보지는 않았고

 

이전에 역도립진자를 파이썬으로 푼게 없는지 찾다보니

 

GEKKO란 라이브러리를 찾았다.

 

https://gekko.readthedocs.io/en/latest/overview.html

 

GEKKO는 비선형/대수 방정식을 최적화하여 해를 구하는 소프트웨어로

 

선형, 2차, 비선형 방정식 등 다양한 문제들을 풀어주고,

 

실시간 최적화, 동역학 시뮬레이션, 비선형 예측 제어 등의 모드가 제공된다고 한다.

 

 

 

 

GEKKO는 파이썬 래퍼로 벡엔드 단에서는 APMonitor가 실제 모델을 풀어준다.

 

 

 

 

 

 

다음 영상은 GEKKO 최적화 플레이리스트의 첫 영상으로

 

GEKKO가 무엇인지, 설치방법, hock & schittkowski 71번 문제를 푸는 과정을 보여주고 있다.

 

 

 

 

 

 

플레이리스트

GEKKO Optimization - YouTube

300x250
728x90

- 결과물

 -> JP2 핀에서 들어온 12V or 20V 전원을 7805 레귤레이터를 통해 JP1으로 5V 출력하는 회로 PCB

 -> 7805 IC 주변에 캐패시터, 콘덴서가 여러개 있음

 

- 7805 레귤레이터

 -> 원하는 값의 전압을 출력하기 위한 소자로 7805는 5V 출력

 -> 주변 회로 구성 330nF, 100nF 레귤레이터 안정화용, 10uF 노이즈제거용

 

 

- 부품 추가

 

-> 7805 

 

-> 다이오드 추가

 

-> 유럽타입의 칩 캐패시터 추가

 

 

-> Polarized 캐패시터도 추가(노이즈 제거용 전해 캐패시터)

 

 

 

-> 전원용 핀해더 선택

 

 

-> 전원 확인용 LED 추가

 

-> 저항 추가

 

 

- 부품 선정 끝

 

 

 

 

 

- 부품 배치

 

 

 

 

- 배선하기

* 그라운드가 필요하니 추가

 

- 그라운드 추가후 배선 마치기

 

 

 

 

*ERC 확인 시 캐패시터 값이 지정되지 않아 워닝 발생

 -> 맨위 데이터시트 이미지를 참고하여 값 지정

 ->  LED나 핀은 값 지정안해도됨

 

 

 

- 12V or 20V를 5V로 낮춰주는 회로 완성

 

 

 

 

 

 

 

 

 

 

 

 

 

300x250
728x90

목표

- 가변저항(포텐쇼미터)으로 LED 밝기를 제어하는 PCB 설계

 

 

 

https://m.blog.naver.com/PostView.nhn?blogId=roboholic84&logNo=220326171298&proxyReferer=https:%2F%2Fwww.google.com%2F

가변저항(포텐셔미터)란?

- 회로에서 저항을 임의로 바꿀수 있는 소자

-> 전압, 전류를 임의로 조절

 

 

일반 가변저항
전기 회로에서의 가변저항

 

 

 

가변저항 기호

 

LED Light Control PCB

 

 

 

 

- 포텐쇼미터 파츠 선택

 

 

 

- 칩 LED 선택

 

 

 

 

- 잠깐 저항가져오고

 

 

 

 

- 플러그도 가져오자

 

 

 

 

 

 

- 결과

 

 

- 배치하기

 

- 배선하기

- ERC 확인하기

 워닝이 뜨나 그냥 pass

 

 

 

 

- 보드 파일 만들기

 

- 그리드 설정

 

 

- 회로도 크기를 대략 30 x 50으로 변경

 

 

 

- 그룹, 무브로 파츠들 옮기고 정리

 

- 배선하고 DRC 하기

 

- 에러 확인

 

 

 

- 완료

 

 

 

 

 

 

300x250
728x90

https://okky.kr/article/595471

 

가끔 오키에서 칼럼들을 보곤하는데

 

이번에 눈에 들어온 글

 

 

 

사회가 원하는 인재상은

 

항상 적극적이고 밝은 사람을 원하지만

 

그런 이상적인 사람이 정말로 존재할까 싶다.

 

 

 

 

 

 

위 글의 작성자는 사람을 아래의 4가지로 나눌수 있다고 한다.

 

1. 선제적이고 적극적인 사람

 

2. 개선의지가 있고 반응하는 사람

 

3. 소극적이고 무기력한 사람

 

4. 방어적이고 방해하는 사람

 

 

 

 

 

 

개인적으로 사람을 항상 1번, 2번, 3번, 4번 부류로 나눌수는 없다고 본다

 

어쩔때는 1번이기도, 어떨때는 3번이 될떄도 바뀔수 있을것같다.

 

 

 

 

아마 나를 위 기준에 맞춘다면

퍼센트로 이렇게 될듯하다.

 

1. 5%

2. 35%

3. 45%

4. 5%

 

 

 

 

 

작성자는 유형 2번에서 실력을 갈고 닦에 유형 1로 전환이 된다고 하는데

 

이 때 다음의 3가지 스킬이 중요하다고 한다.

 

 

이 기준을 생각하면

 

나는 정보 수집을 자주하고, 나름대로는 분석을 한다고 하긴 하지만

 

설득력이 심하게 부족하다.

 

이걸 어떻게 개선해나갈지 천천히 생각해봐야할것 같다.

 

 

 

 

 

 

 

 

 

 

이 글에 대해서 어느 분은

 

대부분의 사람들은 2번 이었다가 3, 4번으로 많이 도태된다고 한다.

 

 

진짜 맨탈 붙잡고 계속하기 힘들긴하다

 

한편으로는 2번 되려고 한다해도 이게 올바른 행동인가 걱정이 들떄가 많다.

 

주변 때문에 내 목표를 그대로 가는게 맞는가 너무 흔들리게 된다.

 

 

 

2번이 될때도 많고 3번이 될때도 많지만

 

이런 사이클을 꾸준히 유지만 시켜도 괜찬을지 아직은 잘 모르겠다.

 

 

 

 

 

 

 

300x250
728x90

아두이노를 사용할때 대부분의 강의들 처럼

 

핀번호 지정해주고 간단 간단하게 사용할수도있지만

 

 

 

회로 측면에서 어떻게 동작하는건지 이전부터 궁금했었다.

 

그래서 나름대로 데이터 시트나 스케메틱을 본다고는 해도

 

당시에는 PCB 관련 이론 지식이 전혀 없이 보려고 하자니 뭐가 뭔소린지 모르겠더라.

 

MCU에 대해서 조금 알고 있어도 그렇고

 

 

 

 

 

그래서 오늘 이글 캐드 내용을 조금 보고나서

 

이전에 차장둔 아두이노 PCB 관련 자료를 보니

 

아두이노 회로도에 대해 확인해야할 사항들을 너무 깊지않게 짚어주시니

 

 

 

실제 아두이노 기판상에 있는 파츠들과 핀 헤더들이 어떤 역활을 하고

 

어떻게 연결된것인지 전반적으로 이해하는데 많은 도움이 되었다.

 

 

 

 

 

 

아래는 PCB 제작 과정

 

 

 

 

 

 

 

 

 

300x250
728x90

LED PCB 보더 거버 생성

- 거버 파일 : 기반 자동화 제작에 필요한 정보들을 가짐 

  ex. 구멍 위치, 크기, 선 두께, 부품 간격 등

- gerb274x.cam과 excellon.cam파일로 출력

- 생성된 거버 파일은 PCB 각 계층에 대한 이미지 정보를 가짐

 

 

- LED 추가

 

 

- 저항 추가

 

 

 

 

- 배터리 홀더 추가하기전에 라이브러리 추가

-> 라이브러리 매니저의 available에서 browse 버튼을 누르면 아까 추가한 라이브러리 파일을 찾을수 있음

-> diy-modules.lbr 추가 

 

 

- diymodules 사용하기

 -> use를 눌러주면 이제 battery holder 파츠를 사용 가능

 

 

 

- 배터리 홀더 검색

 대소문자 구분해서 검색하면 방금 추가한 diy-modules에서 2x AA 베터리 홀더 추가 가능

 

 

 

- move로 파츠 옮기기

 -> 오른쪽 마우스 클릭하면 방향 조정가능

 

 

 

- 배선하기

-> Net을 사용해서 연결

 

 

 

 

 

 

 

- 저장하기

 LED PCB가 완성되었으니 스케메틱파일 저장

 

 

- 회로 연결 확인

 -> ERC 클릭

=> 에러는 없지만 워닝 발생

-> LED1과 R1에 값이 지정이 안됨

 

 

 

- 저항값 지정하기

-> 좌측의 LED 클릭

 

-> R1 클릭

-> 100을 준결과

-> ERC를 다시해보면 R1 워닝이 사라짐

 

 

 

 

- 보드 만들기

 

 

 

 

- 보드 아트웍 할수 있는 보드창이 켜짐

 

 

- 그룹 버튼으로 모든 파츠들을 선택 후 이동시키자

 

 

- 바깥의 노란선은 PCB의 외곽선

 

 

- 그리드 켜기

-> 좌측 상단의 그리드 버튼 클릭

 

-> 그리드 디스플레이 온 해주고, 단위는 mm로 변경

 

 

 

 

- 배치 정리 후 아웃라인도 줄여주자

-> MOVE로 파츠와 아웃라인 선을 옮길수 있음

 

 

 

 

 

- 배선하기

-> 우선 약간 꼬여있으니 LED와 저항을 회전시켜 정리해주자

 

 

-> Route로 배선하기

 

 

-> 파츠들을 다 이어주고 설계가 다 잘되었는지 DRC 확인해보자

 

-> 그대로 체크

-> 에러가 없다고 한다.

 

- PCB 보드 완성

-> 이제 거버 파일 만들어야 함

 

 

-> CAM Processor 클릭

 

-> gerb274x.cam 클릭

-> 프로세스 해주고

 

-> LED_PCB 폴더 안에 CAM 폴더를 새로 만들어서 지정

 

 

 

- 완성

 

 

 

 

 

 

 

300x250
728x90

목표 PCB

- LED, 저항, 2x AA 베터리 홀더 구성

 

 

- 라이브러리 추가

 구글링해서 찾기 -위 배터리 홀더의 경우

https://www.diymodules.org/eagle-show-object?type=dm&file=diy-modules.lbr&device=BATTERY-HOLDER-2AA

 

 

다운받은 파일 끌고와 라이브러리 추가

 

 

 

- 프로젝트 생성 및 회로도 스케메틱 추가

 

 

 

 

- 스캐매틱 창이 열리면 add parts

 

 

 

- 사용하려는 파츠가 없으면 라이브러리 매니저 오픈

- 레지스터 사용할거니 available에서 검색해서 use

 

 

- 이제서야 기본 레지스터가 보인다

 

 

 

* 저항의 종류

->참고 : m.blog.naver.com/haneham/221223869265

- 탄소 피막 저항 carbon film registor

 가장 흔히 사용되는 저항. 세라믹 로드에 탄소분말을 피막 형태로 입힌 후. 나선형으로 홈을 파서 저항값을 조절

 

 

 

- 칩 저항

 회로가 소형화 되고 부품 대부분이 SMT Schematic Mount Technology 공법으로 정착되면서 개발된 새로운 형태의 저항. 세라믹 기판 위에 저항을 후막 형태로 얹어 제조하며 소형화가 이루어지고 있음.

 소형, 박형 고밀도 실장이 가능.

 고주파 특성이 우수하여 컴퓨터 등 최신 기기에선 대부분 칩 형태의 저항이 사용

 

 

 

 

 

 

 

 

 

 

 

 

 

300x250
728x90

마침 역 도립진자 로봇이 센서 문제로 막혔을때

 

프로토타이핑 과정이 코로나로 인해 중지되었다.

 

그래서 오늘까지 한 내용 정도로 일단 마무리

 

 

 

300x250

+ Recent posts