:::: MENU ::::
Posts tagged with: Python

파이썬을 사용한 실시간 데이터 그래프

아두이노에도 데이터를 실시간으로 plot하는 기능이 있지만, 오토스케일링 기능 때문에 가끔 불편할 때도 있다. Python Playground 책의 저자의 블로그를 보니 실시간으로 시리얼 데이터를 받아서 mathplot을 사용해서 그래프를 출력하는 프로그램이 있어서 사용해 봤다.

사용법: python ldr.py –port [port]

VS Code에서 파이썬 코드를 디버깅할 때 인자를 입력 빋아서 디버깅하는 방법이 있는 것 같아서 구글링을 해보고 tasks.json파일을 수정해서 해봤는데, 잘 안되어서 코드를 수정해서 테스트를 했다. 원래 사용법은  위 사용법처럼 포트명을 입력을 해야 함.


Django 개발환경 설치

$아래와 같은 것들이 필요한데, PIP 및 Virtualenv등의 설치는 이전 포스팅 참고

  • Python
  • Git
  • Homebrew
  • Xcode Command Line Tools
  • pip (Package install for python)
  • pil (python imaging library)
  • virtualenv : 파이썬의 버추얼 환경을 위한 프로그램

파이썬 설치

$ brew install python –universal –framework

장고 설치

$ pip install django

sqlite 설치

$ brew install readline sqlite gdbm

파이썬 이미지 라이브러리

pip install PIL

버추얼 환경 만들기

$ virtualenv [버추얼환경 이름] –no-site-packages

버추얼 환경 실행

$ source [버추얼환경 이름]/bin/activate

버추얼 환경 빠져나오기

$ deactivate



Gmail의 메일을 확인해 주는 파이썬 스크립트

Gmail 계정에 새로운 메일이 있는지 확인해 주는 파이썬 스크립트이다.

Feedpaeser라이브러리가 필요하다. http://code.google.com/p/feedparser/

파이썬에서 시리얼을 쓰러면 Pyserial도 필요하다. http://pyserial.sourceforge.net/

import serial, sys, feedparser

#Settings - Change these to match your account details
USERNAME="[email protected]"
PASSWORD="yourpassword"
PROTO="https://"
SERVER="mail.google.com"
PATH="/gmail/feed/atom"

SERIALPORT = "/dev/tty.usbserial-FTDK0P3M" # Change this to your serial port!

# Set up serial port
try:
    ser = serial.Serial(SERIALPORT, 9600)
except serial.SerialException:
    sys.exit()

newmails = int(feedparser.parse(
    PROTO + USERNAME + ":" + PASSWORD + "@" + SERVER + PATH
)["feed"]["fullcount"])

# Output data to serial port
if newmails > 0: ser.write('M')
else: ser.write('N')

# Close serial port
ser.close()

이 코드를 일정한 시간 간격 주기적으로 실행을 하려면, Mac OS X에서는 Launchd가 필요.

Launchd관련 정보 http://zcode.sunji.net/groups/zcode/wiki/4c5b5/launchd__lingon.html

Arduino + Ethernet shield로도 가능할 듯..