Contents

-. 이론 : W7500 Ethernet 활용

-. SW 실습 1차 : ARM mbed 활용

-. SW 실습 2차 : GCC 활용

-. HW 실습 : 회로설게, Artwork (Option)


SW 실습 2차 : GCC 활용

데모 소개

>> mbed

GCC 소개

>> 참조링크

http://opensrclab.tistory.com/category/%EC%98%A4%ED%94%88%EC%86%8C%EC%8A%A4%20HW/%EA%B0%9C%EB%B0%9C%ED%99%98%EA%B2%BD

S2E(Serial to Ethernet) 소개

>> 참조링크

https://github.com/bingdo/IIoT_WIZwiki-W7500_Eclipse

>> Insert MAC address

WIZ7500_DEMO_S2E(gcc).bin

>> Modify IP, Port, Working Mode

>> Test operation of S2E function

예제실습

>> Quiz6

S2E + DHT Sensing 구현하기

Hint : DHT library 사용 (Academy_DHT.7z)

Academy_DHT.7z

>> 참조링크

>> Quiz7

S2E + DHT + TCP Client 구현하기

Hint : S2E Client Mode 사용

>> 참조링크


Contents

-. 이론 : W7500 Ethernet 활용

-. SW 실습 1차 : ARM mbed 활용

-. SW 실습 2차 : GCC 활용

-. HW 실습 : 회로설게, Artwork (Option)


SW 실습 1차 : ARM mbed 활용

ARM mbed 소개

>> 참조링크

https://www.mbed.com/en/

개발환경

>> 참조링크

https://docs.mbed.com/

https://developer.mbed.org/handbook/Homepage

예제실습

>> Quiz2

Serial로 온드/습도 확인하기

Hint : DHT library 사용

>> Easy Module Shield

>> 참조링크

https://developer.mbed.org/users/moisesmarangoni/code/DHT/

W7500_DHT.7z


>> Quiz3

TCP Client를 이용해서 Server에 Data 전송하기

Hint : WIZnetInterface library 사용

>> 참조링크

W7500_TCPC.7z


ThingPlus

>> 참조링크

http://wiznetacademy.com/index.php?module=lecture&act=dispLectureView&lecture_seq=2255&schedule_seq=3

예제실습

>> Quiz4

MQTT 포팅하기

Hint : MQTT library 사용

>> 참조링크

https://developer.mbed.org/users/bangbh/code/w7500-paho-mqtt/

W7500_MQTT.7z


>> Quiz5

SD Card에서 MAC address, destination IP, Port 얻어오기

Hint : SDFileSystem library 사용

>> 참조링크

https://developer.mbed.org/teams/WIZnet/code/SDFileSystem_HelloWorld_WIZwiki-W7500/?platform=WIZwiki-W7500

W7500_SDFile.7z


To be continued.

Contents

-. 이론 : W7500 Ethernet 활용

-. SW 실습 1차 : ARM mbed 활용

-. SW 실습 2차 : GCC 활용

-. HW 실습 : 회로설게, Artwork (Option)


WIZNETIAN IoT Design Contest

>> For Makers, By Makers

http://wiznetian.com/


IoT Design Contest @CyberMakerSpace.com

>> Curation is Creation

http://cybermakerspace.com/


이론 : W7500 Ethernet 활용

스마트공장 알아보기

>> 4차 산업혁명과 Industry 4.0

>> Industry 4.0과 스마트팩토리

>> 카운트다운! 4차 산업혁명


[KBS 다큐1] 카운트다운! 4차 산업혁명 1편 메이커 시대가 온다... 작성자 girujang

>> 서기 2000년대의 생활의 이모저모

출처 : 이정문 화백 (1965년)

>> 미래 스마트공장(1/2)

>> 스마트공장의 차별성(2/2)

>> 핵심 10대기술 평가(1/2)

>> 핵심 10대기술 평가(2/2)

>> 스마트팩토리의 적용예

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

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


https://www.youtube.com/watch?v=MKu2yEM6Pas&list=PLgzkB4sJ6NWKCKjWtIkU5fI2egB4XPuvO

>> 틈새시장 공략 성공 사례

http://news.mk.co.kr/newsRead.php?sc=30000001&year=2017&no=186611&sID=501

https://www.youtube.com/watch?v=1Agni2Coyfw

W7500 소개

>> 참조링크

http://wizwiki.net/wiki/doku.php?id=products:w7500:start

https://github.com/Wiznet/W7500

>> Features

ARM Cortex-M0

48MHz maximum frequency

Hardwired TCP/IP Core

8 Sockets

SRAM for socket: 32 KB

MII (Medium-Independent Interface)

Memories

Flash: 128 KB

RAM 16KB

ROM for boot code: 6 KB

Clock, reset and supply management

POR (Power-On Reset)

Internal Voltage Regulator : 3.3V to 1.5V

8-to-24MHz external crystal oscillator

Internal 8MHz RC Oscillator

ADC

            12bit, 8ch, 1Mbps

GPIO

53 I/Os (16 IO x 3ea, 5 IO x 1ea)

Debug mode

Serial Wire Debug (SWD)

Timer/PWM

4 Timers (32-bit or 16-bit down-counter)

8 PWMs (32-bit counter/timers with programmable 6-bit prescaler)

Communication Interfaces

3 UART (2 UARTs with FIFO and Flow Control, 1 simple UART)

2 SPI

2 I2C (Master/Slave, Fast-mode (400 kbps))

Package

64 TQFP (7x7 mm)

WIZwiki-W7500 소개

>> 참조링크

http://wizwiki.net/wiki/doku.php?id=products:wizwiki_w7500:start

https://developer.mbed.org/platforms/?tvend=38

Ethernet 활용

>> 참조링크

https://www.mbed.com/en/

https://developer.mbed.org/ 회원가입

>> 클라우드 개발환경 접속

>> Import Programs or Libraries

>> Import mbed_blinky

20170303_mbed_blinky_WIZWIKI_W7500.bin

>> Modify LED pins

>> Import TCPEchoServer-WIZwiki-W7500

>> Modify MAC address

>> Monitor Debugging COM Port

>> Quiz1

Serial로 현재 시간 표시하기

Hint : NTP 사용

W7500_NTP.7z


To be continued.

스마트폰으로 제어해 보는 IoT 보드

Content

-. 개발 환경 구축

-. W5500 칩 소개

-. W5500 Ethernet shield 및 Nucleo 보드 소개

-. Blynk_STM32F411_CoIDE 프로젝트 실습


개발 환경 구축

GNU Toolchain 설치

-. 참조 링크 https://launchpad.net/gcc-arm-embedded/5.0/5-2015-q4-major

CoIDE 설치

V1.7.8 다운로드 참조 링크 http://www.coocox.org/software/coide.php

메뉴->Project->Select Toolchain Path 선택

...\GNU Tools ARM Embedded\5.2 2015q4\bin 경로 추가

W5500 칩 소개

Features

참조 링크 http://wizwiki.net/wiki/doku.php?id=products:w5500:start

Fully Hardware TCP/IP 이더넷 솔루션

-. WIZnet의 저렴하고 활용성이 좋은 이더넷 전용칩

-. W3100<W3100A(+)<W5100<W5300<W5200<W5500

-. TCP, UDP, ICMP, IPv4, ARP, IGMP, PPPoE

-. 8 Sockets

-. Integrated Ethernet PHY

-. SPI Mode 0/3 (Up to 80MHz)

-. 48LQFP

ioLibrary

Driver 소스 참조 링크 https://github.com/Wiznet/ioLibrary_Driver

W5500 Ethernet shield 및 Nucleo 보드 소개

W5500 Ethernet shield Features

참조 링크 http://wizwiki.net/wiki/doku.php?id=osh:w5500_ethernet_shield:start

Nucleo 보드 Features

참조 링크 https://developer.mbed.org/platforms/ST-Nucleo-F411RE/

Blynk_STM32F411_CoIDE 프로젝트 실습

Blynk Platform

참조 링크 http://docs.blynk.cc/ 또는 https://ksr-video.imgix.net/projects/657114/video-471034-h264_high.mp4

예제 실습

Blynk_STM32F411_CoIDE 프로젝트 실습

-. Github 소스 다운로드 후 Unzip

-. Open Project 선택

-. Blynk App 다운로드 및 설치

-. Blynk Server 로그인

-. Create New Project 생성

-. E-mail에서 Auth Token 확인

-. Auth Token 변경 후 소스 Build/Rebuild

-. Nucleo 보드, W5500 Ethernet shield, Easy shield 결합

-. Program Download

-. Nucleo 보드 컨트롤 하기

Github 소스 다운로드 참조 링크 https://github.com/bingdo/Blynk_STM32F411_CoIDE

Unzip

Open Project

메뉴->Project->Open Project->Blynk_STM32F411_CoIDE.coproj 선택

Blynk App 다운로드 및 설치

Android폰 : Play 스토어 이용

iPhon : App 스토어 이용

Blynk Server 로그인

처음 로그인 시 Create New Account 사용

Create New Project 생성

E-mail에서 Auth Token 확인

Auth Token, MAC 주소 변경 후 소스 Build/Rebuild

메뉴->Project->Build/Rebuild 선택

Nucleo 보드, W5500 Ethernet shield, Easy shield 결합


Program Download

메뉴->Flash->Program Download 선택

Nucleo 보드 컨트롤 하기

Button, Graph Widget 추가

D10, D11, D12, D13 핀은 Ethernet SPI로 사용 중이므로 컨트롤 불가


IoT 디바이스 컨트롤을 위한 스마트폰 앱 활용

 

강사 Blog : http://opensrclab.tistory.com

                http://www.instructables.com/howto/bingdo/

 

목차

1. 개발 환경 구축

   - LPCXpresso IDE 활용

2. W5500 칩 주요 특징 소개

3. W5500-EVB 사용법 실습

   - Github Loopback_LPC11E36_LPCXpresso 프로젝트 활용

   - TCP/UDP 이용에 대한 기본 개념 이해

4. Github Blynk_STM32F103_Eclipse 프로젝트 데모

   - Blynk 스마트폰 앱, Web Server 활용

   - Blynk 플랫폼 및 Web Server의 개념 이해

5. Github BLYNK_LPC11E36_LPCXpresso 프로젝트 실습

   - Blynk 스마트폰 앱 활용

   - Blynk Server와 IoT 디바이스 제어에 대한 개념 이해

개발 환경 구축

LPCXpresso 설치

   - NXP에서 제공하는 IDE 환경 설치

   - http://wizwiki.net/wiki/doku.php?id=osh:lpcxpresso:start

개발 환경 구축(2)

Flash Magic 설치

   - Firmware Writing Tool 설치하기

   - http://www.flashmagictool.com/

 

개발 환경 구축(3)

USB Driver 설치

   - http://www.ftdichip.com/Drivers/VCP.htm

 

W5500 칩 주요 특징 소개

Features

Fully Hardware TCP/IP 이더넷 솔루션 : WIZnet의 저렴하고 활용성이 좋은 이더넷 전용칩

   - W3100<W3100A(+)<W5100<W5300<W5200

   - TCP, UDP, ICMP, IPv4, ARP, IGMP, PPPoE

   - 8 Sockets

   - Integrated Ethernet PHY

   - SPI Mode 0/3 (Up to 80MHz)

   - 48LQFP

W5500-EVB 사용법 실습

Features

   - NXP LPC11E36 MCU with a 32-bit ARM Cortex-M0

   - Arduino H/W Pin Compatible

 

 

http://wizwiki.net/wiki/doku.php?id=products:w5500:w5500_evb

ioLibrary 소개

 

 

https://github.com/Wiznet/ioLibrary_Driver

Github 예제 실습

W5500-EVB Loopback 예제 실습

   - 소스 다운로드

     https://github.com/Wiznet/Loopback_LPC11E36_LPCXpresso

   - 프로젝트 import

     https://github.com/Wiznet/ioLibrary_Driver

   - 컴파일 및 binary fusing

   - Loopback TCP Server 소스 활성화 및 Client 연동

   - Loopback TCP Client 소스 활성화 및 Server 연동

   - Loopback UDP 활성화 및 Server 연동

Github 예제 실습(2)

   - 소스 다운로드

     https://github.com/Wiznet/Loopback_LPC11E36_LPCXpresso

 

Github 예제 실습(3)

   - 프로젝트 import

 

Github 예제 실습(4)

   - ioLibrary 다운로드 및 프로젝트의 디렉토리에 복사

     https://github.com/Wiznet/ioLibrary_Driver

 

 

Github 예제 실습(5)

   - 컴파일 및 binary fusing

 

* 컴파일 순서에 유념할 것

 

* fusing 전에 ISP 다운로드 모드로 전환할 것 (ISP 버튼 누른 상태에서 Reset)

Github 예제 실습(6)

   - TCP/UDP 이용에 대한 기본 개념

 

* MAC address, IP 중복 피할 것

Blynk_STM32F103_Eclipse 프로젝트 데모

Blynk 스마트폰 앱 / WEB 데모

Instructables.com 참조

http://www.instructables.com/id/How-to-Control-My-IoT-Device-by-Android-Phone-or-I/

 

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

Tutorial

Instructables.com 참조

http://www.instructables.com/id/How-to-Control-My-IoT-Device-by-Android-Phone-or-I/

 

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

BLYNK_LPC11E36_LPCXpresso 프로젝트 실습

Blynk Platform 소개

Blynk is a Platform with iOS and Android apps to control Arduino, Raspberry Pi and the likes over the Internet.

http://www.blynk.cc/

 

https://ksr-video.imgix.net/projects/657114/video-471034-h264_high.mp4

Blynk Platform 소개(2)

Blynk was designed for the Internet of Things. It can control hardware remotely, it can display sensor data,

it can store data, analyze and do many other cool things.

 

Github 예제 실습

W5500-EVB Blynk 예제 실습

참조 블로그

https://ericslabs.wordpress.com/tag/blynk/

   - 소스 다운로드

     https://github.com/Wiznet/BLYNK_LPC11E36_LPCXpresso

   - 프로젝트 import

   - Blynk 앱 다운로드 및 설치

   - Blynk Server 로그인

   - Create New Project 생성

   - E-mail에서 Auth Token 확인

   - Auth Token 변경 후 컴파일

   - binary fusing 후 reset

   - 디바이스 컨트롤 하기

Github 예제 실습(2)

   - 소스 다운로드

     https://github.com/Wiznet/BLYNK_LPC11E36_LPCXpresso

 

Github 예제 실습(3)

   - 프로젝트 import

 

Github 예제 실습(4)

   - Blynk 앱 다운로드 및 설치

 

 Github 예제 실습(5)

   - Blynk Server 로그인

 

 * 처음 로그인 시 Create Account 사용

Github 예제 실습(6)

   - Create New Project 생성

 

 Github 예제 실습(7)

   - E-mail에서 Auth Token 확인

 

Github 예제 실습(8)

   - Auth Token 변경 후 컴파일

 

* MAC address, IP 중복 피할 것

Github 예제 실습(9)

   - binary fusing 후 reset

 

 * fusing 전에 ISP 다운로드 모드로 전환할 것 (ISP 버튼 누른 상태에서 Reset)

   - Terminal을 통해서 Blynk Server에 연결 확인

Github 예제 실습(10)

   - 디바이스 컨트롤 하기

 

 

 

W5500-EVB 활용 웹서버 구현하기 1Tutorial

목차:

1.     W5500 chip 소개

2.     ioLibrary 소개

3.     W5500-EVB 소개

4.     LPCXpresso 개발환경 셋업

5.     W5500-EVB Loopback 예제 실습

6.     Flash Magic 사용법 실습

7.     HTTP 소개

8.     LPCXpresso WTP, Tomcat 설치하기

9.     HTTP GET, POST 예제 실습

 

1. W5500 chip 소개

2. ioLibrary 소개

3. W5500-EVB 소개

-. W5500 chip, ioLibrary, W5500-EVB 소개 부분은 11월 강의 중 “W5500으로 이더넷 구현하기의 강의노트로 대체합니다.

http://wiznetacademy.com/wp/wp-content/uploads/2014/11/w5500으로_이더넷_구현하기.pdf

4. LPCXpresso 개발환경 셋업

-. LPCXpressoNXP사에서 지원하는 개발 IDE입니다. LPCXpresso 설치에 대한 내용은 WIZnet 연구원 Raphael님의 블로그를 참조 부탁 드립니다.

http://xeon011.tistory.com/147

 

5. W5500-EVB Loopback 예제 실습

-. GitHub에서 Loopback_LPC11E36_LPCXpresso 프로젝트를 검색 후 소스를 다운로드 한다. 

 

-. LPCXpresso를 실행 후 import로 프로젝트를 가져온다.

 

 

 

-. 먼저 lpc_chip_11exx, wznet_evb_w5500evb_board 프로젝틀 컴파일 한다.

 

 -. GitHub ioLibrary 파일을 다운로드 후 Loopback 프로젝트에 추가한다.

 

-. 프로젝트에서 우클릭 후 Refresh 한다.

-. Loopback 프로젝트를 컴파일 후 결과를 확인한다.

 6. Flash Magic 사용법 실습

-. Flash MagicNXP사에서 지원하는 flash programming tool입니다. Flash Magic 설치에 대한 내용은 WIZnet 연구원 Sam님의 블로그를 참조 부탁 드립니다.

http://blog.cahg.org/wp/?p=137

-. Flash Magic을 실행 후 W5500-EVB 보드에 USB 케이블을 연결한다.

-. ISP 버튼을 누른 상태에서 Reset 버튼을 눌러서 다운로드 받을 수 있는 상태로 만든다.

-. COM Port, Baud Rate, Interface, Hex File path를 그림과 같이 셋팅 한다.

 -. Start를 선택해서 FW를 다운로드 한다.

 

-. Reset 버튼을 누른 후 LED 정상 동작을 확인한다.

7. HTTP 소개

HTTP (HyperText Transfer Protocol)

-. 애플리케이션 계층의 웹 서비스를 위한 프로토콜

-. HTTP는 일반적으로 두 가지 프로그램으로 구현 (Client/Server 프로그램)

-. HTTP 메시지를 주고 받으며 통신

-. 참조 사이트

http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol

http://en.wikipedia.org/wiki/OSI_model

http://www.w3.org/Protocols/Specs.html

http://www.tutorialspoint.com/http/index.htm

-. 모델


-. 구조

-. 패킷 분석



 8. LPCXpresso WTP, Tomcat 설치하기

-. 사용하고자 하는 Tomcat 버전을 다운로드 해서 적당한 위치에 압축을 푼다. (참조 http://tomcat.apache.org )

-. LPCXpresso를 실행한다.

 

 -. 메뉴>Help>Install New Software…를 선택한다.

 -. Work with path에서 Eclipse Luna update site를 선택한다.

 -. 하단의 Web, XML, Java EE and OSGi Enterprise Development를 선택 후 설치를 진행한다.

 -. 메뉴>Help>Installation Details에서 Eclipse WTP 설치를 확인한다.

 -. 메뉴>File>New>Project>Web>Dynamic Web Project를 선택한다.

 -. Project name을 입력 후 New Runtime을 선택해서 사용하고자 하는 Tomcat의 버전을 선택한다.

 -. Finish를 선택한다.

 

 -. 메뉴>File>New>Other…>Server>Server를 선택하고 사용하고자 하는 Tomcat의 버전을 선택한다.

 

 -. Add를 선택해서 Tomcat installation directory를 맞춘다.

 -. Finish를 선택 후 Serverstart 시킨다.

 -. test 프로젝트에서 우클릭 후 New>HTML File을 선택한 후 Finish 진행한다.

 -. title, body를 입력 후 Run As>Run on server html 파일을 실행한다.

 

 

 

 9. HTTP GET, POST 예제 실습

-. 메뉴>Window>Show View>Other…>Debug>TCP/IP Monitor를 선택한다.

-. 메뉴>Window>Preferences>Run/Debug>TCP/IP Monitor에서 Add 한 후 Start 시킨다.

-. get.html, get.jsp 파일을 생성한 후 TCP/IP Monitor를 이용하여 http 메시지를 확인한다.

-. post.html, post.jsp 파일을 생성한 후 TCP/IP Monitor를 이용하여 http 메시지를 확인한다.

 

<소스 참조>

http_examples.zip

 

 

 

 

 


+ Recent posts