MESH를 사용하여 디스플레이를 표시 (사진/동영상)하는 방법
하고 싶은 일
MESH*의 액션으로 디스플레이 표시
↓실제로 해본 동영상은 이쪽(동영상 링크가 잘 되어 있지 않았기 때문에 수정 2017/01/14)↓
- MESH를 사용하여 디스플레이를 표시 (사진 / 동영상)하는 방법
*MESH는 작은 편의를 형성할 수 있는 블록 모양의 전자 태그입니다.
- MESH : 작은 편의를 형성 할 수있는 블록 모양의 전자 태그
필요한 것
・MESH 앱용 스마트폰
· 트리거에 이용하는 MESH 태그 (이번에는 움직임 태그와 버튼 태그를 사용)
· GPIO 태그
· Arduino Leonardo
・usb-miniusb 케이블
· 파워 포인트
・표시 기기(PC&모니터 or PowerPoint가 들어간 스마트폰)
· OTG 케이블 (USB 호스트 케이블, 스마트 폰으로 표시하는 경우에만 필요)
· 점핑 케이블 등 (MESH와 Arduino의 배선에 필요한 것)
HOW TO
MESH를 사용해 간이 프로토 타입을 작성하고 있다고 하면 액션으로서, 디스플레이 표시를 하고 싶은 일이 자주 있었으므로 그 방법을 여기에 정리해 둡니다. 소프트를 이용할 수 있는 유저가 많은 PowerPoint와 조합한 방법이 됩니다.
시스템 구성도
MESH 태그 부분은 원하는 태그로 변경할 수 있습니다.
Arduino Leonardo에 쓰는 프로그램
GPIO에서 보낸 신호를 "숫자 키 + ENTER 키"로 변환하여 PowerPint 쪽으로 보냅니다.
프로그램을 작성할 때 도구 > 보드에서 Arduino Leonardo를 선택하고 올바른 직렬 포트를 선택하십시오.
mesh_arduino_powerpoint.ino#include <Keyboard.h>
#define MESH_DOUT_PIN_01 7
#define MESH_DOUT_PIN_02 6
#define MESH_DOUT_PIN_03 5
int mesh_val[3] = {0, 0, 0};
int flag = 0;
int pre_flag = flag;
void setup() {
// put your setup code here, to run once:
pinMode(MESH_DOUT_PIN_01, INPUT_PULLUP);
pinMode(MESH_DOUT_PIN_02, INPUT_PULLUP);
pinMode(MESH_DOUT_PIN_03, INPUT_PULLUP);
Keyboard.begin();
delay(5000);
}
void loop() {
// put your main code here, to run repeatedly:
mesh_val[0] = digitalRead(MESH_DOUT_PIN_01);
mesh_val[1] = digitalRead(MESH_DOUT_PIN_02);
mesh_val[2] = digitalRead(MESH_DOUT_PIN_03);
flag = calFlag() * 2;
if (flag != pre_flag) {
if(flag < 10){
Keyboard.press('1' + flag);
}
else{
Keyboard.press('1');
Keyboard.releaseAll();
delay(100);
Keyboard.press('1' + flag % 10);
}
delay(100);
Keyboard.press(KEY_RETURN);
}
delay(100);
Keyboard.releaseAll();
pre_flag = flag;
}
int calFlag(){
int ret_val = 0;
ret_val = pow(2, 2) * mesh_val[2] + pow(2, 1) * mesh_val[1] + pow(2, 0) * mesh_val[0];
return ret_val;
}
파워 포인트
PowerPoint의 미리보기 모드에는 "숫자 키 + Enter"로 지정된 페이지로 전환하는 바로 가기가 있습니다.
그 바로 가기 키를 Arduino에서 보내려고합니다.
구조로서는, 홀수 페이지에 쇼트 컷 키로 천이해, 0초로 다음의 페이지로 전환한다고 하는 처리를 짜넣는 것으로, 결과적으로 짝수 페이지가 표시되게 되어 있습니다. 그렇게 함으로써, 다시 동영상·음악·애니메이션 등의 재생이 가능하게 됩니다.
아래에이 프로그램 용 PowerPoint 템플릿을 UP하고 있으므로 이용시 다운로드하십시오.
h tps://d ゔぇ. 오, ぇ. 이 m/후ぃぇ/d/0B1pzt←ぅ2bn Vk여 MWg1안 BLZGM/ゔぃ에w? 우 sp = 샤린 g
주의 사항은 각 페이지의 노트에 기재되어 있습니다.
아래 그림과 같이 홀수 페이지는 이용하지 않고 짝수 페이지만 이용해 주십시오.
・UI를 만들 때는, 애니메이션의 추가를 해 타이밍을 「직전의 동작과 동시」를 선택해 주세요.
・동영상・음악을 자동 재생하려면, 애니메이션으로 재생을 추가해, 타이밍을 「직전의 동작과 동시」를 선택해 주세요.
MESH 레시피
아래 그림의 레시피라고는 알기 어렵습니다만, 트리거 태그로부터 3개의 GPIO 태그(DOUT1-3)에 연결되어 있습니다.
GPIO 태그의 DOUT1-3 핀의 HIGH · LOW의 조합으로 Arduino에 신호로 보냅니다 (최대 8 패턴).
송신된 신호는 결과적으로 아래의 홀수 페이지의 천이에 대응하고 있습니다.
스마트폰에서 사용하려면
OTG 케이블을 이용하여 아래 그림과 같이 연결해 주십시오.
One drive로 공유하면 PC에서 편집한 데이터를 스마트폰으로 재생할 수 있습니다.
데이터 사이즈가 크면 잘 동작하지 않는 경우가 있으므로, 주의해 주십시오.
Reference
이 문제에 관하여(MESH를 사용하여 디스플레이를 표시 (사진/동영상)하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/glory/items/b675683a584ab3e303a8
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
・MESH 앱용 스마트폰
· 트리거에 이용하는 MESH 태그 (이번에는 움직임 태그와 버튼 태그를 사용)
· GPIO 태그
· Arduino Leonardo
・usb-miniusb 케이블
· 파워 포인트
・표시 기기(PC&모니터 or PowerPoint가 들어간 스마트폰)
· OTG 케이블 (USB 호스트 케이블, 스마트 폰으로 표시하는 경우에만 필요)
· 점핑 케이블 등 (MESH와 Arduino의 배선에 필요한 것)
HOW TO
MESH를 사용해 간이 프로토 타입을 작성하고 있다고 하면 액션으로서, 디스플레이 표시를 하고 싶은 일이 자주 있었으므로 그 방법을 여기에 정리해 둡니다. 소프트를 이용할 수 있는 유저가 많은 PowerPoint와 조합한 방법이 됩니다.
시스템 구성도
MESH 태그 부분은 원하는 태그로 변경할 수 있습니다.
Arduino Leonardo에 쓰는 프로그램
GPIO에서 보낸 신호를 "숫자 키 + ENTER 키"로 변환하여 PowerPint 쪽으로 보냅니다.
프로그램을 작성할 때 도구 > 보드에서 Arduino Leonardo를 선택하고 올바른 직렬 포트를 선택하십시오.
mesh_arduino_powerpoint.ino#include <Keyboard.h>
#define MESH_DOUT_PIN_01 7
#define MESH_DOUT_PIN_02 6
#define MESH_DOUT_PIN_03 5
int mesh_val[3] = {0, 0, 0};
int flag = 0;
int pre_flag = flag;
void setup() {
// put your setup code here, to run once:
pinMode(MESH_DOUT_PIN_01, INPUT_PULLUP);
pinMode(MESH_DOUT_PIN_02, INPUT_PULLUP);
pinMode(MESH_DOUT_PIN_03, INPUT_PULLUP);
Keyboard.begin();
delay(5000);
}
void loop() {
// put your main code here, to run repeatedly:
mesh_val[0] = digitalRead(MESH_DOUT_PIN_01);
mesh_val[1] = digitalRead(MESH_DOUT_PIN_02);
mesh_val[2] = digitalRead(MESH_DOUT_PIN_03);
flag = calFlag() * 2;
if (flag != pre_flag) {
if(flag < 10){
Keyboard.press('1' + flag);
}
else{
Keyboard.press('1');
Keyboard.releaseAll();
delay(100);
Keyboard.press('1' + flag % 10);
}
delay(100);
Keyboard.press(KEY_RETURN);
}
delay(100);
Keyboard.releaseAll();
pre_flag = flag;
}
int calFlag(){
int ret_val = 0;
ret_val = pow(2, 2) * mesh_val[2] + pow(2, 1) * mesh_val[1] + pow(2, 0) * mesh_val[0];
return ret_val;
}
파워 포인트
PowerPoint의 미리보기 모드에는 "숫자 키 + Enter"로 지정된 페이지로 전환하는 바로 가기가 있습니다.
그 바로 가기 키를 Arduino에서 보내려고합니다.
구조로서는, 홀수 페이지에 쇼트 컷 키로 천이해, 0초로 다음의 페이지로 전환한다고 하는 처리를 짜넣는 것으로, 결과적으로 짝수 페이지가 표시되게 되어 있습니다. 그렇게 함으로써, 다시 동영상·음악·애니메이션 등의 재생이 가능하게 됩니다.
아래에이 프로그램 용 PowerPoint 템플릿을 UP하고 있으므로 이용시 다운로드하십시오.
h tps://d ゔぇ. 오, ぇ. 이 m/후ぃぇ/d/0B1pzt←ぅ2bn Vk여 MWg1안 BLZGM/ゔぃ에w? 우 sp = 샤린 g
주의 사항은 각 페이지의 노트에 기재되어 있습니다.
아래 그림과 같이 홀수 페이지는 이용하지 않고 짝수 페이지만 이용해 주십시오.
・UI를 만들 때는, 애니메이션의 추가를 해 타이밍을 「직전의 동작과 동시」를 선택해 주세요.
・동영상・음악을 자동 재생하려면, 애니메이션으로 재생을 추가해, 타이밍을 「직전의 동작과 동시」를 선택해 주세요.
MESH 레시피
아래 그림의 레시피라고는 알기 어렵습니다만, 트리거 태그로부터 3개의 GPIO 태그(DOUT1-3)에 연결되어 있습니다.
GPIO 태그의 DOUT1-3 핀의 HIGH · LOW의 조합으로 Arduino에 신호로 보냅니다 (최대 8 패턴).
송신된 신호는 결과적으로 아래의 홀수 페이지의 천이에 대응하고 있습니다.
스마트폰에서 사용하려면
OTG 케이블을 이용하여 아래 그림과 같이 연결해 주십시오.
One drive로 공유하면 PC에서 편집한 데이터를 스마트폰으로 재생할 수 있습니다.
데이터 사이즈가 크면 잘 동작하지 않는 경우가 있으므로, 주의해 주십시오.
Reference
이 문제에 관하여(MESH를 사용하여 디스플레이를 표시 (사진/동영상)하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/glory/items/b675683a584ab3e303a8
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
#include <Keyboard.h>
#define MESH_DOUT_PIN_01 7
#define MESH_DOUT_PIN_02 6
#define MESH_DOUT_PIN_03 5
int mesh_val[3] = {0, 0, 0};
int flag = 0;
int pre_flag = flag;
void setup() {
// put your setup code here, to run once:
pinMode(MESH_DOUT_PIN_01, INPUT_PULLUP);
pinMode(MESH_DOUT_PIN_02, INPUT_PULLUP);
pinMode(MESH_DOUT_PIN_03, INPUT_PULLUP);
Keyboard.begin();
delay(5000);
}
void loop() {
// put your main code here, to run repeatedly:
mesh_val[0] = digitalRead(MESH_DOUT_PIN_01);
mesh_val[1] = digitalRead(MESH_DOUT_PIN_02);
mesh_val[2] = digitalRead(MESH_DOUT_PIN_03);
flag = calFlag() * 2;
if (flag != pre_flag) {
if(flag < 10){
Keyboard.press('1' + flag);
}
else{
Keyboard.press('1');
Keyboard.releaseAll();
delay(100);
Keyboard.press('1' + flag % 10);
}
delay(100);
Keyboard.press(KEY_RETURN);
}
delay(100);
Keyboard.releaseAll();
pre_flag = flag;
}
int calFlag(){
int ret_val = 0;
ret_val = pow(2, 2) * mesh_val[2] + pow(2, 1) * mesh_val[1] + pow(2, 0) * mesh_val[0];
return ret_val;
}
Reference
이 문제에 관하여(MESH를 사용하여 디스플레이를 표시 (사진/동영상)하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/glory/items/b675683a584ab3e303a8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)