일본 여행 #2 - 교토편 (아라시야마, 기온거리)

교토, 오사카에 다녀왔습니다!

일본은 처음가는 것이라서 걱정을 많이 했지만

좋은 시간 보냈습니다.

3박 4일로 여행갔는데요

그 중 하루는 교토에서 보냈습니다.

행복했습니다.

인상 깊었던 장소는 아라시야마 대나무 숲!

치쿠린입니다.

image.png

제가 갔을 때 교토는 최대 37도였는데요

대나무 숲에 들어가니깐 그나마 덜 더웠습니다.

그리고 이런 대나무 숲을 처음 가봤는데 되게 멋지더군요.

한국에도 대나무숲이 있던거 같은데

다음에 한 번 가보고 싶어요.

여러분에게 전체 일정을 소개해보고 싶어요.

전체 일정

  • 간사이 공항 -> 교토역
  • 교토역 -> 숙소 (니조성 근처)
  • 숙소 -> 이라시야마 (불교 사찰, 치쿠린, 장어 덮밥, 도게츠 교)
  • 이라시야마 -> 슈퍼마켓 -> 숙소
  • 숙소 -> 기온 거리 -> 와규 -> 숙소

알찬 일정이였습니다.

간사이 공항 도착 (10시) -> 교토역

하루카를 타고 바로 교토로 갔습니다!
하루카는 우리나라로 치면 KTX 같은 느낌이였습니다.

<하루카>
image.png

교토역에 도착한 다음에
교토역에 있는 인포메이션 센터에서
교토 원데이 패스를 삽니다.

교토 원데이 패스는

교토의 모든 버스들을 하루동안 탈 수 있는 티켓입니다.

저도 교토에 있는동안 이 티켓으로 돌아다녔습니다.

600엔이고, 3번만 타도 이득입니다.

강추!!!

교토역 –> 숙소

교토 안내소에서 친절히 설명을 듣고

숙소로 갑니다.

버스를 타고 이동을 했습니다.

숙소를 잘잡아서 교토역에서 한번에 갔습니다.

숙소 –> 이라시야마 대나무숲

숙소에서 짐을 맡기고

이라시야마로 이동합니다.

역시 버스를 타고 이동합니다.

구글 지도로 길찾기를 하면 몇시까지 어디에 도착해야하는지, 어떤 버스를 타야하는지

어디서 내려야하는지까지 알려주는데, 2정거장 전에 진동으로 알려줍니다.

이라시야마

여기에 불교 사찰이 있어서 잠깐 들렀습니다.

연꽃이 예뻐서 찍었습니다.

<불교 사찰에서>
image.png

그리고 바로 치쿠린으로 이동!!

인생 사진 건지고 갑니다.

사방이 다 대나무로 둘러쌓여있는 산책길이였습니다.

되게 좋았습니다. 이런 곳이 있구나.

<치쿠린>

image.png

치쿠린을 갔다가 장어덮밥을 먹었는데요.

이 장어덮밥 집은 엄청 유명하다고 합니다.

미슐랭 가이드에서 별 1개를 받았다고 합니다.

미슐랭에 대해 잘 모르지만 여기에 오르기만 해도 맛집이라고 하더군요.

맛있었습니다. 먹으면서 우리나라 장어도 맛있는데.. 생각도 들었습니다.

2시쯤 갔는데 1시간 기다린것 같습니다.

<히로카와 우나기>

image.png

image.png

밥을 먹고 도게츠교로 이동!

도게츠교는 대나무숲 근처에 있어서 걸어갈 수 있습니다.

목조 다리인데 생각보다 짧았습니다.

여기서도 한 컷!

<도게츠교>

image.png

image.png


도게츠교 –> 숙소

숙소로 가는 길에 마트가 있었는데

마트에서 회와 맥주를 삽니다.

회가 되게 싸면서 신선해 보였습니다.

맥주는 한 캔에 100엔밖에 안해서 깜짝놀랐습니다.

마트에 들렀다 숙소로 가서 조금 쉬었습니다.

<마트>
image.png

숙소 –> 기온 거리

밤에 기온 거리로 갔는데

강이 예뻤습니다.

여기서 술을 마시면 무슨 기분일까? 싶더라고요.

<기온 거리 근처의 강가>
image.png

우연히 찾은 맛집!

라면집에 가려고 했었는데

사람들이 줄서있어서 들어갔습니다.

<규카츠 맛집>
image.png

규카츠와 말차 맥주를 마셨습니다.

녹차맛과 맥주맛이 동시에!! 맛있었습니다.

고기도 맛있어요.

<말차 맥주와 규카츠>
image.png

기온 거리 근처에서 밥을 먹고, 산책을 했습니다.

산책 중에 동상이 있었는데 알고보니 사람이였어요! ㅋㅋ

같이 사진도 찍었습니다.

<동상인 줄 알았는데 사람>
image.png

이제 숙소로!!

숙소에서 낮에 마트에서 산 회와 맥주를 먹습니다.

아주 신선하고 맛있습니다.

만원 어치만 샀는데 2만원 어치 살걸..

아쉬웠습니다.
<숙소에서 회와 과일 맥주>
image.png

이렇게 교토의 하룻밤이 끝났습니다.

느낀점은..

  • 대나무 숲을 꼭 가라!
  • 교토는 하루로는 안될 것 같다. (청수사, 금각사, 은각사를 못갔네요.)
  • 교토 원데이 버스는 꼭 사라
  • 구글 지도는 길찾기에 아주 유용하다.
  • 일본 사람들이 친절하다.

감사합니다.


This page is synchronized from the post: ‘일본 여행 #2 - 교토편 (아라시야마, 기온거리)’

일본 여행 #1 - 교토, 오사카로 가자

교토, 오사카로 자유여행갑니다!

일본은 처음 가보는데 재밌겠다.

기대하고 있습니다.

맛있는 라멘, 스시, 회만 먹어도 만족할거 같아요.

비행기를 탔습니다.

IMG_20180713_061645.jpg

IMG_20180713_061812.jpg

비행기 안에서 찍은 구름 사진

구름으로 만든 바다같아요.

지평선이라고 해야할까

보이는 모든게 다 구름이엿습니다.

멋져요~

IMG_20180713_083757.jpg

교토를 먼저 가는데요.

하루카 기차타고 갑니다!

재밌는 여행이 되길..


This page is synchronized from the post: ‘일본 여행 #1 - 교토, 오사카로 가자’

Q.bo One - Q.bo One is open source personal robot assistant

Q.bo One

Q.bo One is open source personal robot assistant


Screenshots

Xu9y3uO.gif
8KZSFZ4.gif
View Image
lvd5ro8lstunaezcyfw1.png
View Image

Hunter’s comment

Q.bo One is the perfect Open Source Platform for Developers.

It is based on Raspberry Pi and Arduino.

If you want to change boare, you can do it.

I think the greatest thnig on Q.bo One is that it make you focus on only software.

It includes belows sensors and motor, controller.

  • eye - stereo camera
  • mouth - dotmatrix led
  • neck - servo motor x2
  • ear - microphone with noise reductgion
  • audio - speaker
  • touch sensors
  • connection - wifi, Bluetooth

So, you can focus on software.

I added video “Q.bo One Indiegogo Launch”.
https://youtu.be/-AQy-LcculU

Thank you.


https://www.indiegogo.com/projects/q-bo-one-your-open-source-personal-robot-assistant


Contributors

Hunter: @jacobyu



Steemhunt.com

This is posted on Steemhunt - A place where you can dig products and earn STEEM.
View on Steemhunt.com

This page is synchronized from the post: ‘Q.bo One - Q.bo One is open source personal robot assistant’

[IoT Project] 아두이노와 라즈베리파이 간의 시리얼 통신

안녕하세요.

이번 글은 아두이노와 라즈베리파이 간의 시리얼 통신에 대한 글입니다.

먼저, 시리얼 통신이 무엇인지에 대해 설명을 합니다.

그리고 J-bot에서는 시리얼 통신을 활용하였는가? 에 대해 적었습니다.

J-bot이 궁금하신가요? 아래 글들을 읽어보세요.

나만의 비서 로봇, J-bot 만들고 있습니다.
google-aiy-voice-kit 활용기
google-aiy-voice-kit 셋팅

아래는 J-bot의 동작 동영상입니다.

https://youtu.be/Xv3_kfhknEM

위 동영상 처럼 손이 가까이 오거나 답변을 한 후 로봇이 팔을 움직이기 위해서

시리얼 통신을 활용하였습니다.


시리얼 통신

시리얼 통신은 이종의 보드 간에 데이터를 주고 받는 방법 중 하나입니다.

시리얼 통신을 위해서 필요한 것들에 대해 소개를 하겠습니다.


  • Rx, Tx, GND 선 연결

    • 아두이노는 USB로 연결할 경우, 하드웨어는 따로 생각할 필요없습니다. 준비 끝!

    • 아두이노 내부에 칩이 있습니다. 그래서 USB만 연결해도 시리얼 통신을 할 수 있습니다.





  • 보레이트 (Baudrate) 설정

    • 보레이트는 시리얼 통신의 속도를 말합니다.

    • 아두이노와 라즈베리파이 모두 같은 보레이트로 설정해야합니다.

    • 9600 bps, 19200 bps, 38400 bps, 115200 bps 등이 있습니다.

    • bps 는 bit per second로 1초에 보낼수 있는 비트 수를 의미합니다.

    • 9600bps는 1초에 9600 bit를 보낼 수 있습니다.



  • 데이터 포맷

    • 한 번 데이터를 보낼 때, 아래 그림의 데이터 포맷과 같이 8bit씩 보냅니다.

    • 만약 “hello”라는 텍스트를 시리얼 통신을 통해 전송하면 ‘h’, ‘e’, ‘l’, ‘l’, ‘o’로 하나씩 전송됩니다.




사진 <시리얼 데이터 포맷> - http://nptel.ac.in/courses/Webcourse-contents/IIT-KANPUR/microcontrollers/micro/ui/Course_home2_11.htm

fig2.jpg





J-bot은 시리얼 통신을 어떻게 활용하는가?



J-bot은 아래와 같이 아두이노와 라즈베리파이를 활용합니다.

아두이노

  • 내부적으로는 서보모터를 제어하고 그리고 초음파 센서의 거리값을 수집

  • 1초에 10번 모터의 각도와 거리값을 라즈베리파이에게 전송합니다.

  • 라즈베리파이에서 모터를 몇 도로 동작하라는 신호를 받으면 모터 제어

라즈베리파이


  • 아두이노로부터 받는 데이터를 활용하여 여러 동작 수행

  • 라즈베리파이에서 아두이노로 원할 때 명령을 내릴 수 있습니다.


코드를 보면서 이야기 합시다.

먼저 아두이노에서 송수신을 어떻게 하는지 보겠습니다.

아두이노에서 라즈베리파이로 센서 데이터를 보내는 코드는 아래와 같습니다.

image.png

아두이노에서 라즈베리파이로 보내는 센서 데이터는 아래의 형식으로 표현합니다.

초음파 거리 (cm) * 서보 모터 각도 (deg)

50 * 40

위와 같은 데이터라면 거리 50cm, 각도 40도라는 의미입니다.

위에는 제가 단순하게 데이터 포맷을 정한 것입니다.

(필요하다면 데이터 길이, 데이터, 데이터 검증 byte 등으로 구성하여 보내기도 합니다.)

아두이노가 라즈베리파이로부터 데이터를 받아 처리하는 코드는 아래와 같습니다.

image.png

위 코드는 라즈베리파이가 ‘모터를 몇도로 회전하라’ 라는 데이터를 보내는데, 그 데이터를 받는 부분입니다.

위의 코드에서 매 루프마다 serial.read를 통해 입력되는 문자가 있는지 체크합니다.

문자가 있을 경우, inputString이라는 문자열에 추가합니다.

만약 입력된 문자가 ‘*’일 경우, 문자열이 끝나는 것으로 생각합니다.

그리고 * 앞의 데이터를 추출하고, goal_servo_val에 넣습니다.


라즈베리파이에서 아두이노로부터 센서 데이터를 받는 코드는 아래와 같습니다.

image.png

SerialComm은 시리얼 통신을위한 모듈입니다. 초기화, 읽기, 쓰기 함수를 만들었습니다.

init함수에서 먼저 아두이노와 연결되는 드라이버를 초기화합니다.

그리고 read 함수는 아두이노에서 보낸 데이터에서 거리와 각도값을 추출합니다.

*을 구분자로 활용하여 첫번째 데이터가 거리, 두번째 데이터가 각도라는것을 알 수 있고 변수에 저장합니다.

motorcontrol 함수는 아두이노에게 회전할 각도를 전송하는 함수입니다.

main에서는 serial_comm의 객체를 만들고

쓰레드를 하나 만들어서 serial.read를 반복적으로 호출합니다.


결론

라즈베리파이 하나만으로 시스템을 구성하는게 아니라 두개를 같이 쓴 이유는

두개의 역할이 다르며, 각자의 역할을 하는게 효율적이기 때문입니다.

라즈베리파이는 통신, 영상처리, 음성처리 등을 하고

아두이노는 반복적이고 실시간으로 수행해야하는 작업 ( 모터를 제어하는 것이나 10hz로 센서 데이터를 수집)을 하고요!

여기까지해서 시리얼 통신에 대해 적어봤는데요.

읽어주셔서 감사합니다.


This page is synchronized from the post: ‘[IoT Project] 아두이노와 라즈베리파이 간의 시리얼 통신’

[IoT Project] 나만의 비서 로봇, J-bot 만들고 있습니다.

로봇 소개

오늘 소개할 로봇은 나만의 비서 로봇!

제 이름이 Jacob이라.. 이름은 J-bot이라고 지었습니다.

image.png

아직은 볼품없지만, 외형도 갖추고 기능도 하나하나 넣다보면

멋진 로봇이 될거라 믿습니다.


설명

지난 글들에서 google-aiy-voice-kit 를 구매하고 가지고 논 것으로 글을 썼습니다.
google-aiy-voice-kit 활용기
google-aiy-voice-kit 셋팅

이어서 이 로봇도 voice-kit를 활용하여 개발하고자 합니다.

먼저 동영상부터 보시죠!

https://www.youtube.com/watch?v=Xv3_kfhknEM

구현한 기능은 아래와 같습니다.

  • Google assistance 연동
  • 나만의 명령 수행
  • 카메라 촬영
  • 초음파 센서로 가까이 오면 로봇 팔 움직이기
  • 대답 후에 팔 흔들기

구현

하드웨어는 아래와 같이 구성돼있습니다.

  • Voice-kit with 라즈베리파이
  • 카메라
  • Arduino
  • 초음파 센서
  • 서보모터

image.png

코드는 아래와 같습니다.

  • main.py
  • serial_comm.py : arduino와 serial 통신 하는 부분
  • vision.camera.py : camera 이미지 가져오는 부분
  • vision.face_detector.py : face detector하는 부분, 라즈베리파이에서는 너무 느리다.
  • j-bot-arduino : 아두이노에서 모터와 초음파센서를 활용하는 부분

아래 저장소에 업데이트하고 있습니다.
https://github.com/passionbull/J-bot

몇 개 중요한 부분에 대해서만 설명을 하자면..


PC

PC에서 중요한 부분은 아래의 루프이다.

    with aiy.audio.get_recorder():
        while True:
            status_ui.status('ready')
            print('Press the button and speak')
            button.wait_for_press()
            status_ui.status('listening')
            # text is what I said (speech to text)
            # audio is answer of assistant
            text, audio = assistant.recognize()
            local, answer = local_commands(text)
            if local is False:
                aiy.audio.play_audio(audio, assistant.get_volume())
            sc1.action()
  • 버튼이 눌리고 나서 음성을 인식한다.
  • 인식한 음성이 local 명령어인지 체크한다.
  • 아니라면 google_assistant의 답변을 재생한다.
  • 다음으로 아두이노에게 팔을 흔들라고 명령한다.

아두이노

아두이노는 pc로부터 특정 신호를 받을 때, 모터를 제어해야한다.

void setup() {
  Serial.begin(9600);
  leftArm.attach(9);  // attaches the servo on pin 9 to the servo object
  int ultraEvent = timer.every(50, doUltra, (void*)0); //do function per 1sec
  int motorEvent = timer.every(10, doMotor, (void*)0);
  inputString.reserve(200);
  servo_val = 90;
  goal_servo_val = 90;
}
  • 또한, 주기적으로 pc에게 거리 정보와 모터의 각도를 전송한다.
  • 아래 코드는 이를 위한 셋업 코드이다.
  • timer를 사용하여 주기적으로 모터 제어와, 초음파 센서 거리 측정을 수행한다.
  • 시리얼 통신 초기화, PC로부터 데이터를 받는 부분, 보내는 부분 모두 필요하다.

계획

  • 3D 프린터로 외형 제작
  • 로봇 얼굴 달기
  • 근처에 사람이 오면, 푸쉬 알림

관심이 있으신 분들은 언제든 환영입니다.

제가 외형 설계에는 좀 약한 부분이라..

혹시나 로봇의 외형을 해보고 싶으신 분들 있다면 너무 좋을것 같아요!

이 로봇을 만들기 위해 필요한 재료는 voice-kit이 전부입니다!

많은 관심 부탁드립니다!!


This page is synchronized from the post: ‘[IoT Project] 나만의 비서 로봇, J-bot 만들고 있습니다.’

[IoT Project] Google AIY Voice Kit Setting

AIY Voice Kit 셋팅 관련 기록

AIY Voice Kit 활용이라는 글에서 AIY Kit의 하드웨어, 소프트웨어를 셋팅하였습니다.

주요 소자들을 끼고 박스에 잘 넣은 다음,

Google AIY Project에서 제공해주는 라즈비안 OS 이미지를 SD카드에 넣어줍니다.

이제 추가적으로 필요한 여러 셋팅들을 설치해야하는데요.

제가 라즈베리파이에 여러가지 셋팅한 것을 기록해놨습니다.

많은 도움이 됐으면 좋겠습니다!


라즈베리파이 카메라를 이용한 사진 촬영



  • raspistill -w 1640 -h 922 -o image.jpg

  • raspistill -o image.jpg -hf -vf -w 320 -h 240 //상하반전






AIY Voice Kit 한국어 설정


/home/pi/AIY-projects-python/src/aiy/i18n.py

_DEFAULT_LANGUAGECODE = ‘ko-KR’ 로 바꾼다.

<img class=”alignnone size-full wp-image-63” src=”http://45.76.217.116/wordpress/wp-content/uploads/2018/06/i18n
수정_한국어.png” alt=”” width=”633” height=”280” />


  • 한국어 설정을 해도 구글 어시스턴트 핫키는 안되는 것 같다. 확인 해보기


raspberry pi 한국어 설치


sudo apt-get install ibus ibus-hangul fonts-unfonts-core




Raspberrypi 화면 설정


sudo nano /boot/config.txt

VNC로 접속을 할 때, 적절한 해상도를 설정하지 않으면 불편하다.

hdmi_mode=16 –> 1080p







Text to speech 설치


text to speech를 하는 여러가지 방법이 있다.
1. Google cloud text to speech


  • voice에 대한 여러 설정이 가능하다.

  • 아직 한국어는 여성음성만 된다. (Male로 설정해봤으나 안됨.)

  • 400만 쿼리 요청에 대해 무료

  • 인증키 발급 필요하다.


설치 방법

  • pip3 install –upgrade google-cloud-texttospeech

  • pip3 uninstall protobuf

  • sudo pip3 install protobuf==3.5.2

  • sudo apt-get install mpg321



image.png


2. Google speech


  • google에서 제공하는 서비스

  • 따로 인증키가 필요없음

  • 무료임

  • 한국어 지원됨


설치 방법

  • sudo pip3 install google_speech

  • sudo apt-get install sox libsox-fmt-mp3




3. AIY Kit 자체 지원


  • aiy.audio.say(‘Hello’)

  • 한국어 지원 X






자동 실행



  • sudo nano /etc/systemd/system/assist.service

  • sudo systemctl enable assist.service

  • sudo systemctl start assist.service








Github 코드 업데이트

https://github.com/passionbull/J-bot

이 저장소에서 확인하실 수 있습니다.


This page is synchronized from the post: ‘[IoT Project] Google AIY Voice Kit Setting’

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×