이 블로그는 Web 환경을 이용한 원격 제어 기술에 필요한 지식을 공유 하기 위한 블로그 입니다.
실제 개발과 프로그램 예를 위하여 Raspberry Pi와 Raspberry Pi Pico, ATmega128 보드, Arduino Mega 보드(ATmega2560), WiFi 모듈을 사용 합니다.

python-startup

Python startup
Raspberry Pi 에서 Python 사용을 위한 준비


  • Python 개발 환경
    • Raspberry Pi에는 Python 2와 Python 3가 이미 설치되어 있기 때문에 별도로 Python를 설치 하지 않아도 된다. 만약 필요하다면 최신 Python 버전으로 업그레이드 할 수 있다.

    • Desktop 환경에서 Python 실행하기
      • Terminal mode에서 Python 실행 하기
        • Python 2 실행하기: Terminal 프로그램을 실행하고 Terminal 창에서 아래 명령을 실행 한다.
        • python

          python이 실행되면 print("Hello World") 프로그램을 입력하고 Enter Key를 누른다.

          Ctrl D를 누르면 Pyhton이 종료 된다.

          아래 예는 "Hello World"를 출력하는 프로그램을 실행 하는 예 이다.

        • Python 3 실행하기: Terminal 프로그램을 실행하고 Terminal 창에서 아래 명령을 실행 한다.
        • python3

          python이 실행되면 print("Hello World") 프로그램을 입력하고 Enter Key를 누른다.

          Ctrl D를 누르면 Pyhton이 종료 된다.

          아래 예는 "Hello World"를 출력하는 프로그램을 실행 하는 예 이다.

      • Python 3(IDLE) 이용하기
      • Desktop에서 개발 -> Python 3(IDLE) 를 Click 하면 Python 3(IDLE)가 실행 된다.

        Python 3(IDLE) 창에 print("Hello World") 프로그램을 입력하고 Enter Key를 누른다.

        아래 예는 "Hello World"를 출력하는 프로그램을 실행 하는 예 이다.


    • 원격 컴퓨터에서 PuTTY(SSH 프로토콜 이용)를 사용한 개발 환경
      • Raspberry Pi를 원격제어에 이용하는 경우 Raspberry Pi용 모니터와 키보오드를 사용할 수 없기 때문에 PuTTY를 사용한 원격(인터넷으로 연결된 Windows PC에 설치된 PuTTY 프로그램을 이용) 개발 환경을 이용하는 것이 효과적 이다.

        이 예에서는 Windows PC에 설치된 PuTTY 프로그램을 가상 단말기로 이용하고, 프로그램 코드는 Notepad++ 편집기를 사용하여 작성하고, 작성된 프로그램 코드를 WinSCP(FTP 프로그램)을 사용하여 Raspberry Pi 전송한다. 전송된 프로그램은 PuTTY를 이용하여 실행 한다.

        아래에서는 Windows PC에 설치된 PuTTY 프로그램과 Notepad++(프로그램 편집용 텍스트 편집기), WinSCP(FTT 프로그램)를 이용한 개발 환경에 대하여 설명 한다.

      • PuTTY
      • 네트워크 상의 다른 컴퓨터에 로그인하여 원격으로 명령을 실행할 수 있는 가상단말기 프로그램으로 SSH(Secure SHell) 프로토콜 이용하여 보안성이 좋고 다양한 설정이 가능한 무료 오픈소스 프로그램 이다.

        PuTTY를 가상 단말기로 사용하기 위한 Raspberry Pi 설정과 원격접속 방법은 Raspberry Pi 사용을 위한 준비 페이지의 원격 접속(SSH, VNC) 설정 하기ssh 원격접속하기를 참고 하기 바람.

      • Notepad++ 편집기
      • Notepad++는 텍스트 파일을 작성하기 위한 무료 오픈소스 프로그램으로 다양한 옵션과 강력한 편집 기능을 갖고 있기 때문에 다양한 언어의 프로그래밍에 적합하다.

        Notepad++는 Notepad++ Download 페이지에서 다운로드 할 수 있다.

      • WinSCP
      • WinSCP는 Windows용 그래픽 유저 인터페이스를 지원하는 SFTP(SSH File Transfer Protocol) 및 FTP 클라이언트 프로그램으로 오픈소스 프리웨어 이다. 이 프로그램을 사용하여 로컬 컴퓨터와 원격 컴퓨터 간에 안전하게 파일을 복사할 수 있다.

        주: PuTTY에서 생성된 SSH 보안키는 WinSCP와 공유되기 때문에 PuTTY를 먼저 설치한 다음 WinSCP를 설치하면 WinSCP에 별도의 보안키 설정 없이 사용할 수 있다.

        참고자료: WinSCP를 이용한 원격 파일 관리

        참고자료: WinSCP Download 페이지

    • 원격 컴퓨터에서 PuTTY를 사용한 개발 환경을 이용한 프로그램밍 예
      • 아래 예는 "Hello World"를 출력하는 프로그램을 Windows PC에서 작성하고, Raspberry Pi로 프로그램 전송하여 실행 하는 예 이다.

      • Notepad++ 편집기를 사용하여 Python 프로그램 작성하기
        • Windows PC에서 Notepad++ 편집기를 열고 아래와 같이 프로그램을 작성하여 저장(File name: hello-world.py) 한다.
        • Notepad++ 편집기 실행 창 예

      • WinSCP를 이용하여 Raspberry Pi로 프로그램 전송하기
        • WinSCP를 실행하고 Raspberry Pi에 연결 한다.
        • PC에 hello-world.py File이 있는 폴더와 Raspberry Pi에 hello-world.py File을 저장할 폴더를 설정 한다.
        • hello-world.py File을 Raspberry Pi의 해당 폴더로 복사 한다.
        • 주: WinSCP에서 내부 편집기 또는 Notepad++를 외부 편집기로 사용하여 직접 편집하는 것도 가능하다.

          WinSCP 실행 창 예

      • PuTTY를 이용한 프로그램 실행
        • PuTTY를 실행하고 Raspberry Pi에 로그인 한다.
        • hello-world.py File이 있는 폴더로 이동 한다.
        • 아래 명령으로 Python3에서 hello-world.py를 실행 한다.
        • python3 hello-world.py

          PuTTY 실행 창에서 hello-world.py 프로그램을 실행한 예


  • Raspberry Pi 에서 Python 사용을 위한 준비 - 관련 페이지 보기