embeded/raspberry pi2015. 7. 5. 18:16

라즈베리에서 하긴 귀차나서 ㅋㅋㅋ

일단 PC에서 테스트



데이터 시트 상으로는.. 이런 순서로 데이터가 되어잇고

38400bps 로 전송한다고 하는데.. jpeg라고는 하지만..

하나 받으려면 꽤 걸리겠네 ㄷㄷ

[링크 : http://www.linksprite.com/upload/file/1291522825.pdf]


프로그램은.. 다른 사이트에서 찾아서 테스트

기본값대로 테스트 했고, USB 시리얼 포트만 COM2로 이동 시켜서 수행

속도를 올리기 위해서는 baudrate를 올리는 것도 방법 일 듯 하다.


320x240

38400  14초

115200 5초

드럽게 오래걸리네.. 그런데 640x480이랑 차이가 없는거 보면.. 프로그램 문제일수도..

(그냥 640x480으로 받는게 아닐까 싶다.


배선은..

가지고 있는 녀석들이 순서가 안 맞아 케이블을 꼬아서

RX -TX - Vcc - GND로 연결되는걸

RX -TX - GND - Vcc 로 바꾸어주고


시리얼이니 당연히(!) RX-TX꼬아서 USB to Serial에 연결해 주었다.


USB 시리얼 부터

TXD - 주황 - D2 - RXD

RXD - 노랑 - D3 - TXD

GND - 갈색 - GND - GND

Vcc - 빨강 - Vcc - Vcc(5V)


[링크 : http://store.cutedigi.com/infrared-jpeg-color-camera-serial-uart-rs232-level/]

[링크 : https://s3.amazonaws.com/linksprite/camera/JPEG_camera_uartinterface_TTL/LSY201evaluationsoftware.exe]

Posted by 구차니
embeded/raspberry pi2015. 7. 4. 12:48

테스트 회로에는 이렇게 되어 있어서..

6V 입력에 220옴으로.. LED를 output에 연결하라고 되어 있긴한데..

막상 출력을 재보니..

5V 입력에 1.8V 출력


불밝기가 엄청 약하다...

GPIO 에서 3.3V 톨러런스니까.. 1.8를 1로 인식하겠지?




최대 탐지거리는 6미터 라는데. 최소로 하면 한 50cm 정도 되는듯(실험치)

그리고 시간은.. 최소 5초 정도.. 중간으로만 놔도 언제 꺼지나 세다가 포기하는 수준이라..

일단은 최소로 해놓고 쓰면 될 것으로 보인다.


Sensitivity range: up to 20 feet (6 meters) 110° x 70° detection range

Power supply: 3V-9V input voltage, but 5V is ideal.


If the Rtime potentiometer is turned all the way down counter-clockwise (to 0 ohms) then

Tx = 24576 x (10K) x 0.01uF = 2.5 seconds (approx)

If the Rtime potentiometer is turned all the way up clockwise to 1 Megaohm then

Tx = 24576 x (1010K) x 0.01uF = 250 seconds (approx)


[링크 : https://learn.adafruit.com/downloads/pdf/pir-passive-infrared-proximity-motion-sensor.pdf] 



귀찮으니.. GPIO1번에 연결하고 읽어오기


pi@raspberrypi ~ $  gpio readall

 +-----+-----+---------+------+---+-Model B2-+---+------+---------+-----+-----+

 | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |

 +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+

 |     |     |    3.3v |      |   |  1 || 2  |   |      | 5v      |     |     |

 |   2 |   8 |   SDA.1 |   IN | 1 |  3 || 4  |   |      | 5V      |     |     |

 |   3 |   9 |   SCL.1 |   IN | 1 |  5 || 6  |   |      | 0v      |     |     |

 |   4 |   7 | GPIO. 7 |   IN | 1 |  7 || 8  | 1 | ALT0 | TxD     | 15  | 14  |

 |     |     |      0v |      |   |  9 || 10 | 1 | ALT0 | RxD     | 16  | 15  |

 |  17 |   0 | GPIO. 0 |  OUT | 0 | 11 || 12 | 0 | IN   | GPIO. 1 | 1   | 18  |

 |  27 |   2 | GPIO. 2 |   IN | 0 | 13 || 14 |   |      | 0v      |     |     |

 |  22 |   3 | GPIO. 3 |   IN | 0 | 15 || 16 | 0 | IN   | GPIO. 4 | 4   | 23  |

 |     |     |    3.3v |      |   | 17 || 18 | 0 | IN   | GPIO. 5 | 5   | 24  |

 |  10 |  12 |    MOSI |   IN | 0 | 19 || 20 |   |      | 0v      |     |     |

 |   9 |  13 |    MISO |   IN | 0 | 21 || 22 | 0 | IN   | GPIO. 6 | 6   | 25  |

 |  11 |  14 |    SCLK |   IN | 0 | 23 || 24 | 1 | IN   | CE0     | 10  | 8   |

 |     |     |      0v |      |   | 25 || 26 | 1 | IN   | CE1     | 11  | 7   |

 +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+

 |  28 |  17 | GPIO.17 |   IN | 0 | 51 || 52 | 0 | IN   | GPIO.18 | 18  | 29  |

 |  30 |  19 | GPIO.19 |   IN | 0 | 53 || 54 | 0 | IN   | GPIO.20 | 20  | 31  |

 +-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+

 | BCM | wPi |   Name  | Mode | V | Physical | V | Mode | Name    | wPi | BCM |

 +-----+-----+---------+------+---+-Model B2-+---+------+---------+-----+-----+


pi@raspberrypi ~ $ gpio read 1

0

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

1

pi@raspberrypi ~ $ gpio read 1

0

pi@raspberrypi ~ $ gpio read 1

0

pi@raspberrypi ~ $ gpio read 1

0 


5초 정도

Posted by 구차니
embeded/raspberry pi2015. 7. 2. 22:42

일단.. 귀차니즘으로.. 5V USB 파워를 그냥 서보에 연결해서 사용

180도에 0.9~1.1초에 가깝게 걸리는 듯(약간 부족하게 움직이다 돌아오는거 봐서는)

전압이 낮아서인가.. 전류가 부족한건가..

스펙상으로는 4.8V에 60도 0.2초 정도였으니 3배면 0.6초이고

그러면 거의 인지 가능할 만큼 그거보다 빨리 움직여서 멈춰있는 시간이 있어야 할텐데 -_-


아무튼.. 동영상에서 찾은 것에 비해서도 꽤 늦은 느낌..


$ gpio pwm 1 30; sleep 1; gpio pwm 1 110; sleep 1;gpio pwm 1 30; sleep 1; gpio pwm 1 110; sleep 1 



Posted by 구차니
embeded/raspberry pi2015. 7. 2. 22:31

wiiring pi 설치방법


$ sudo apt-get install git-core

$ mkdir ~/src

$ cd ~/src

$ git clone git://git.drogon.net/wiringPi

$ cd wiringPi

$ git pull origin

$ ./build 


[링크 : http://wiringpi.com/download-and-install/]

Posted by 구차니
embeded/arduino(genuino)2015. 6. 29. 17:08

헐.. 다 합치면 한 30만 넘을듯 ㄷㄷㄷㄷ


RFID

[링크 : http://www.seeedstudio.com/depot/Grove-125KHz-RFID-Reader-p-1008.html] 5V / TTL 9600bps

    [링크 : http://www.seeedstudio.com/wiki/Grove_-_125KHz_RFID_Reader]


Ultrasonic Ranger

[링크 : http://www.seeedstudio.com/depot/Grove-Ultrasonic-Ranger-p-960.html] 5V (3.3에도 작동은 함)



    [링크 : http://www.seeedstudio.com/wiki/Ultra_Sonic_range_measurement_module]


Joystick

[링크 : http://www.seeedstudio.com/depot/Grove-Thumb-Joystick-p-935.html] 5V


Chainable LED


1. The ic will latch a bit of data when the rising edge of the clock coming, And the data should changed after the falling edge of the clock;

2. The flag bits is two “1”;

3. The verify dta B7’is equal to ~B7,and B6’1S ~B6,B7 and B6 are the gray data of blue

4. the serial data is MSB first ,and the sortorder is blue ,green, red 


[링크 : http://www.seeedstudio.com/wiki/images/b/be/P9813_datasheet.pdf]

    [링크 : http://www.seeedstudio.com/depot/Grove-Chainable-RGB-LED-p-850.html] 5V 20mA


Relay

[링크 : http://www.seeedstudio.com/depot/Grove-Relay-p-769.html]


Humidity - Temperature Sensor

[링크 : http://www.seeedstudio.com/depot/Grove-TempHumi-Sensor-p-745.html] 3.3~5V


Serial Camera

[링크 : http://www.linksprite.com/upload/file/1291522825.pdf]

[링크 : http://store.cutedigi.com/infrared-jpeg-color-camera-serial-uart-rs232-level/] 5V / TTL 38400bps

    [링크 : http://learn.linksprite.com/.../use-linksprite-jpeg-camera-to-take-picture-and-store-to-a-sd-card/]


PIR Sensor

[링크 : https://cdn.openimpulse.com/.../DYP-ME003_PIR_Sensor_Module_Datasheet.pdf] 5V / output 3.3 high/low

    [링크 : http://www.vetco.net/catalog/product_info.php?products_id=12843]

    [링크 : https://learn.adafruit.com/downloads/pdf/pir-passive-infrared-proximity-motion-sensor.pdf]




bluetooth shield

[링크 : http://www.seeedstudio.com/wiki/Bluetooth_Shield] 3.3V / TTL 38400bps


Mega Shield

[링크 : http://www.seeedstudio.com/depot/Grove-Mega-Shield-p-934.html]

    [링크 : http://www.seeedstudio.com/wiki/Grove_-_Mega_Shield]


Wifi shield

[링크 : https://www.arduino.cc/en/Main/ArduinoWiFiShield]




android board

[링크 : http://www.seeedstudio.com/depot/Seeeduino-ADK-Main-Board-p-846.html]

    [링크 : http://www.seeedstudio.com/wiki/Seeeduino_ADK_Main_Board]




GND / Vcc / Data / Data 식으로 주로 사용하는 듯?


[링크 : http://www.seeedstudio.com/depot/grove-base-shield-p-754.html?cPath=132_134]

Posted by 구차니
embeded/raspberry pi2015. 6. 29. 15:26


KEY_OK 보다는..

KEY_ENTER로 해줘야 하려나?


ir receiver 해서 설정시

KEY_OK로 하면 메뉴에서 들어갈수 없다 -_-


[링크 : http://kodi.wiki/view/Keymap]

[링크 : http://kodi.wiki/view/Keyboards]

Posted by 구차니
embeded/raspberry pi2015. 6. 22. 21:30


$ gpio mode 1 pwm

$ gpio pwm-ms

$ gpio pwmc 400


$ gpio pwm 1 30

$ gpio pwm 1 70

$ gpio pwm 1 110 



실험적으로 해보니.. 30~110 범위 총 80

30(좌)

70(중간)

110(오른쪽 끝)

Posted by 구차니
embeded/raspberry pi2015. 6. 22. 13:00

pwm balanced(?) mode 에서는

말그대로.. on:off 비율로 출력된다. 고로.. LED 같은걸 켜는데에는 안정적이 되서 좋다고 한다.


(기본값)$ gpio pwm-bal

$ gpio mode 1 pwm

$ gpio pwm 1 1

약.. 1.8ms 간격으로 신호가 나옴.. 음.. 머지?

(대충 1/1024 저 폭이 아마도.. 1us 정도 될지도?)


$ gpio pwm 1 64

너무 촘촘하니 확대!


엑? 26us 단위? ㄷㄷㄷ

(64/1024 = 0.0625 대략 6% 출력! 2/26= 1/13=0.076 = 7% 정도 대충 맞을듯?)


$ gpio pwm 1 128

14us 단위

(128/1024= 대충 12.5% 2/13=1/6=0.16 =16%)


$ gpio pwm 1 256

10us 단위

(256/1024=25% 2/8=1/4=25%)




PWM ms(mark - space)는 고정간격에 공백을 주는 방법이다.

라즈베리에서는 bal mode가 기본이라 pwm-ms로 모드를 변경해야 한다.


$ gpio pwm-ms

$ gpio pwmc 400

20ms 단위로 PWM 파형이 나옴


$ gpio pwmc 200

40ms 단위로 PWM 파형이 나옴


$ gpio pwmc 800

10ms 단위로 PWM 파형이 나옴


클럭 디바이더는.. 1/4096 까지만 허용한다.

근데 해보면 4095 까지만 됨 -_-

$ gpio pwmc 1000000

gpio: clock must be between 0 and 4096

Posted by 구차니
embeded/raspberry pi2015. 6. 20. 18:48

서보모터 제어해보겠다고 간단하게 PWM으로 해보려고 했는데

클럭이 문제인지 자꾸 가장 왼쪾을 벗어 나려고 쑈하는 바람에

모터 고장날까봐 후다닥 -_-


pwmSetClock(1); -> 2.342kHz

pwmSetClock(2); -> 4.81MHz

pwmSetClock(3); -> 3.19MHz

pwmSetClock(4); -> 2.398MHz

pwmSetClock(5); -> 1.919MHz

pwmSetClock(6); -> 1.6MHz

pwmSetClock(7); -> 1.3MHz

pwmSetClock(8); -> 1.2MHz

pwmSetClock(9); -> 1.067MHz

pwmSetClock(10); -> 959kHz

pwmSetClock(11); -> 871kHz

pwmSetClock(20); -> 480kHz

pwmSetClock(200); -> 48kHz

pwmSetClock(500); -> 19kHz

pwmSetClock(1000); -> 9.59kHz

pwmSetClock(2000); -> 4.802kHz

pwmSetClock(4000); -> 2.401kHz

pwmSetClock(5000); -> 10.58kHz


[링크 : http://raspberrypi.stackexchange.com/questions/4906/control-hardware-pwm-frequency] 


The PWM controller incorporates the following features:

• Two independent output bit-streams, clocked at a fixed frequency.

• Bit-streams configured individually to output either PWM or a serialised version of a 32-bit word.

• PWM outputs have variable input and output resolutions.

• Serialise mode configured to load data to and/or read data from a FIFO storage block, which can store up to eight 32-bit words.

Both modes clocked by clk_pwm which is nominally 100MHz, but can be varied by the clock manager.


[링크 : http://www.element14.com/.../43016-102-1-231518/Broadcom.Datasheet.pdf] 


+

2015.06.21


[링크 : http://www.rasplay.org/?p=6783] python

[링크 : https://learn.adafruit.com/adafruits-raspberry-pi-lesson-8-using-a-servo-motor/overview] python


 The base clock has a frequency of 19.2 MHz. Setting a divisor of 400 along with a "range" of 1024 gives us a PWM frequency of 19200000/400/1024 = 46.875 Hz, or a period of 21.3 milli seconds.

[링크 : http://electronut.in/controlling-two-servos-with-hardware-pwm-on-the-raspberry-pi-model-a/]

    [링크 : http://devkyu.tistory.com/349]



[링크 : http://razzpisampler.oreilly.com/ch06.html] stepper motor

Posted by 구차니
embeded/raspberry pi2015. 6. 20. 18:01

리모컨 인식은 하는데..

인식 속도가 끊어서 한번 눌렀다가 바로 떼어야 할 정도로 

KEY_LEFT를 누르는데 두번이 한번에 눌리는 느낌?


아무튼 검색을 해보니

delay나 repeat 값을 조절해서

빠르게 입력되는 키를 좀 둔감하게 쓸 수 있는 듯


[링크 : http://forum.kodi.tv/showthread.php?tid=57488]

[링크 : http://www.lirc.org/html/configure.html]


+

젠장 PWM 하다가 포트 날려먹었나 -_ㅠ

라즈베리 2 에서 갑자기 입력이 안된다 ㅠㅠ 라즈 b로 테스트 ㅠㅠ

+

켜기 전에 연결하고 하니 되네.. 머지?

초기에 자동 감지라 그런가?


remoterepeat 라는걸 해봤는데 차이가 없네 -_-

$ sudo vi /usr/share/kodi/system/advancedsettings.xml

<?xml version="1.0" encoding="UTF-8"?>

<advancedsettings>

  <video>

    <defaultplayer>dvdplayer</defaultplayer>

    <defaultdvdplayer>dvdplayer</defaultdvdplayer>

  </video>

        <remoterepeat>2000</remoterepeat>

        <gui>

                <algorithmdirtyregions>3</algorithmdirtyregions>

                <nofliptimeout>0</nofliptimeout>

        </gui>


        <splash>false</splash>


        <lookandfeel>

                <enablerssfeeds>false</enablerssfeeds>

        </lookandfeel>


        <cputempcommand>sed -e 's/\([0-9]*\)[0-9]\{3\}.*/\1 C/' /sys/class/thermal/thermal_zone0/temp</cputempcommand>

        <gputempcommand>/opt/vc/bin/vcgencmd measure_temp | sed "s,temp=\([0-9]*\)\.[0-9]'C,\1 C,"</gputempcommand>


</advancedsettings> 


실험적으로 해보니.. suppress_repeat가 잘 먹는다.

리모컨 마다 특성이 달라서 그럴려나?(내가 쓰는건 미친듯이 반복입력한다.)

$ sudo vi /etc/lirc/lircd.conf

min_repeat    1

suppress_repeat 2 // #suppress_repeat 1

#  uncomment to suppress unwanted repeats 

Posted by 구차니