1. Developing Smart Gateway of IOT-16300
1) Recently, information and communication-based various service technologies, such as cloud, smart devices and IoT (Internet of Things) have been rapidly developed.
2) In addition, platform technologies of network equipment like routers, smart gateways, switches, firewalls which are required for this various technologies are being developed as well.
3) Development of information & communication technology enables users not only to overcome time and space constraints for the use of smart devices, but also to continue what they are doing in any other places including the office, home, school and to provide the same network environment as that of physical remote location.
4) Technology that is making the multiple remote networks to one local network can be implemented through well-known inter-network VPN (Virtual Private Network) equipment. Commercial VPN equipment has been evolved to provide the application of many advanced functions including not only basic router and tunneling functions, but also intelligent firewall including IDS (Intrusion Detection System) and IPS (Intrusion Protection System), QoS (Quality of Service) technology, multi-line support, and load balancing, etc.
5) These commercial VPN equipment are being used as high-performance products in a dedicated line environment with the support of experts.
6) Moreover, these are expensive and dedicated equipment due to their technical nature so that it is not easy to ensure for them to provide the compatibility between equipment.
7) Also as mentioned earlier, under the situation that small and medium-sized businesses and even the public increasingly require the need for the same network environment such as cloud, IoT (Internet of Things) and multi-screen, the need for the wired/wireless router to support inter-network VPN under general internet environment has been increased because application of dedicated VPN equipment to the expensive leased line environment is not economical.
8) Accordingly, a technology providing reliable VPN environment in a vulnerable network environment which shows relatively less CPU and memory performances than dedicated VPN equipment is required.
9) Although several existing wired/wireless routers to support VPN exist, their simple VPN server functions only provide direct linkage to a PC or a smartphone not an inter-network VPN linkage.
10) Therefore, their utilization is decreased, the machine to support is limited and the speed rate is around 5 Mbps level. In addition, not only that it is not economical to popularize commercial VPN dedicated equipment, but that its operation is not possible without dedicated line.
11) Due to this reason, we come to propose below solutions to resolve the above problems
First, we propose a platform (Smart Gateway) to support VPN tunneling to the affordable cost hardware.
Second, we propose an implementation plan to support at least 20 Mbps for VPN tunneling rate for each tunneling algorithm through new platform (Smart Gateway).
Third, we propose a method for applying different-features, multi-queuing techniques via Smart Gateway beyond the simple QoS, ToS (Type of Service) methods by identifying real-time internet line situation even if the change of internet line quality is large.
12) Historic network-based equipment including routers, firewalls, and VPN equipment have been developed continuously even today.
Development of hardware performance itself is required, but development of software technology is further required in recent days not only for the proper responses to a variety of services and environment changes, but also for the need of popularization of associated network equipment to respond against explosive expansion of various services such as cloud, big data, and loT.
13) The hardware, operating system and software platform used in Smart Gateway of IOT-16300 are based on OpenWRT which many developers in the various network equipment fields have used for a long time.
The techniques of VPN tunneling-related solutions applied to Smart Gateway of IOT-16300 can be used in various network equipment such as smart gateway application for loT.
Smart Gateway was developed for IOT-16300 and it is used for commercial purposes to control home appliances.
The Internet of Things (IoT) is the network of physical objects, devices, vehicles, buildings and other items which are embedded with electronics, software, sensors, and network connectivity, which enables these objects to collect and exchange data.
The Internet of Things connects devices and vehicles using electronic sensors and the Internet.
The Internet of Things allows objects to be sensed and controlled remotely across existing network infrastructure, creating opportunities for more-direct integration between the physical world and computer-based systems, and resulting in improved efficiency, accuracy and economic benefit.
Many of IoT training systems are so configured as to allow practice of on-board sensor control using a Raspberry Pi Module.
To control the on-board sensors through the Raspberry Pi Module, virtual IP is used, not through a commercial Cloud Server.
Therefore, it is not easy to practice remote control of various home appliances through Raspberry-pi based IoT training system.
Moreover, the Raspberry-Pi module does not provide the gateway function. Also, as for Cloud Server, as several virtual machines operate on a single Real Machine, there may occur some problems associated with the Virtual Server (e.g. the server might be inaccessible in case of DB shutdown, Max-Connect count over, etc.). Since several VMs operate on a single Cloud server and a large part of the memory is used by other VMs, connection fail can be occurred.
The Cloud server provides many advantages such as cost saving, customer support, convenience, etc. However, it is better to use an independent Real-Machine such as VPN Smart Gateway.
( IoT concept using Raspberry-pi module )
As the internet (networking) function is built into the Raspberry-pi module, power consumption is increased and networking cost is raised when the system is configured with several sensors (home appliances).
( IoT concept using VPN based Smart Gateway )
Practice of sensor control using an Arduino module and Smart Gateway.Various sensors (home appliances) can be controlled at a low cost since the sensor control is carried out independent of the network, and the sensor control can be done safely and conveniently as the security and connection settings are centralized through Smart Gateway.
IOT-16300 is IoT training system using OpenWRT based VPN Smart Gateway and Arduino board that various sensors mounted.
OpenWrt is an operating system (in particular, an embedded operating system) based on the Linux kernel, primarily used on embedded devices to route network traffic.
IOT-16300 is so configured as to allow practice of sensor control on the Arduino board through the VPN Smart Gateway as well as remote audio, TV, Video control using Raspberry Module.
IOT-16300 provides benefits as follows:
1) Things (sensors) are separated from the Internet (VPN Smart Gateway), allowing various interfaces such as USB Serial, Bluetooth, Zigbee, etc.
2) It is possible to practice control of various sensors on the Arduino platform through the VPN Smart Gateway and possible to remotely control the real (commercial) home appliances of Audio.
3) From the OpenWRT platform, the Internet is useful for expansion of various functions and security such as WWW, IPCAM, firewall, VPN, etc.
1) Sensors Control Practice on Arduino Board via OpenWRT based VPN Smart Gateway
(1) 8-pc LED Control
(2) Button Control
(3) Color LED Control
(4) DC motor Control
(5) Step motor Control
(6) Buzzer Control
(7) 7-segment display Control
(8) LCD Control
(9) Light sensor Control
(10) IR Sensor Control
(11) PSD sensor Control
2) Project modules control practice by Java programming & C programming languages.
(12) OLED sensor Control
(13) Relay sensor Control
(14) PIR sensor Control
(15) GAS sensor Control
* for module control - C programming
* for web Interface - Java programming
3) Home Appliances (Audio, TV, Video) Control & IoT network construction using Raspberry Module.
(1) How to implement IoT (Internet of Things)
- Introduction IoT using YUN Shield
- Introduction IoT using Raspberry Pi
- Introduction IoT using Beaglebone black
(2) Smart Gateway
- Interwotking with Arduino
- Interworking with Sensor Network
- Interworking with Internet
(3) Application practice
- IoT Sensor Control Interworking
- IoT Sensor Cam Interworking
- Programming practice for the Kernel supporting serial communication.
- Programming practice for the Kernel supporting UVC-Camera
- Programming practice for the kernel supporting Bluetooth communication
- node.js installation and programming practice which supports bi-directional Web UI
- smtp programming practice for mail communication
(4) Home Appliance Control ( real Audio, TV, Video Control )
4) IoT training courses in programming practice
(1) Serial Communication Program
(2) Bluetooth Communication Program
(3) Java script Program
4. System configuration
1) IoT concept using Raspberry-pi module.
Google's third-parties provide the service of Cloud Server.
Subscribe to Cloud Server and can get ID & PW to use.
Pay membership subscription.
2) IoT concept using VPN based Smart Gateway
5. Hardware photo
1) VPN Smart Gateway 1 set
2) Web camera 1 ea
3) Arduino board 1 set
4) Raspberry Module 1 ea
5) Audio 1 ea
6) Project module
(1) OLED sensor module 1 ea
(2) Relay sensor module 1 ea
(3) PIR sensor module 1 ea
(4) GAS sensor module 1 ea
7) Program CD 1 ea
8) Textbook 2 book
7. Training Contents
Chap 1. The final result demonstrated
Chap 2. About lessons
Chap 3. Embedded systems overview
Chap 4. About IoT (Internet of Things)
2) Introduction to IoT using YUN Shield
3) Introduction to IoT using Raspberry Pi
4) Introduction to IoT using Smart Gateway
Chap 5. Arduino - Things
1) Arduino start
2) Digital inputs and outputs (GPIO) and PWM
3) Analog signals and Sensor values
4) USB and serial communication
5) Serial inter-working
6) Bluetooth inter-working
1) What is Arduino ?
2) 8-pc LED control to be connected to digital pin
3) Controlling the button connected to digital pin
4) Color LED control to be connected to digital pin
5) Buzzer Control connected to digital pin
6) 7-Segment Control to be connected to digital pin
7) Crystal LCD Control to be connected to I2C
8) Light sensor Control to be connected to analog pin
9) IR Sensor Control to be connected to analog pin
10) How to utilize PSD Sensor to be connected to analog pin
11) How to utilize DC Motor
12) SPL-Duino Control by Smart Phone
Chap 6. Smart Gateway - Internet
1) OpenWRT overview
2) OpenWRT - IDE
3) OpenWRT - Kernel Program Supporting Serial, Bluetooth, UVC-Cam
4) OpenWRT - Arduino inter-working, Programming USB-Serial
- LED Control
- Buzzer Control
- TMP35 Control /p>
- Servo motor Control
- DC motor Control
- SPL-Duino Control
5) OpenWRT - Arduino inter-working, Programming USB-Bluetooth
6) OpenWRT - Arduino inter-working, Programming WWW-node.js and Webcam
7) OpenWRT - Arduino inter-working, Programming ALERT
Chap 7. IoT Projects Programming
1) Arduino nano + bluetooth + relay
2) Arduino nano + bluetooth + pir + gas
3) Arduino nano + bluetooth + oled
Chap 8. Programming using the Raspberry Pi
1) About Raspberry Pi
2) Basic setting of Raspberry Pi
3) GPIO Control
4)Remote audio / video play, TV Control
5) OpenWRT - Raspberry Pi inter-working TCP/IP
6) OpenWRT - Raspberry Pi inter-working WWW-node.js
[ Arduino Board ]
1) Arduino Board
(1) Atmega328 Processor
(2) Arduino compatible boards
(3) Built-in Bluetooth
(4) Built-in IO expansion pin (12ea of digital pin, 6es of analog pin)
(5) Built-in Motor connection pin (2ea of DC motors connection pin)
(6) Built-in illumination sensor
(7) Built-in 3ea of button switch
(8) USB connection cable provided
(9) Battery connecting case provided
2) Infrared sensor module -------------------3EA
(2) Reverse Current : 10uA
3) PSD sensor module --------------------1EA
(1) High Sensitivity PSD Sensor : GP2YOA21YK
(2) Detecting output type : Analog voltage
(3) Detection distance : 10 ~ 80Cm
4) LCD Display module --------------------1EA
(1) STN, Negative, Transmissive Mode"
(2) Display Data Color : Light Gray or Deep Blue
(3) Viewing Angle : 6H
(4) Driving Method : 1/16 duty, 1/5 bias
(5) Back Light : White LED backlight
(6) input voltage : 6V Max.
(7) LCD Panel : 16x2 Char (5x8dots)
5) LED Display module --------------------1EA
(1) 2012 Type LED
(2) Straight Type 8EA LED
6) Cable ------------------------------20EA
(1) SIZE : 30cm
(2) AWG 24
(3) color : black
(4) Molex 3 pins
7) 7-segment ---------------------------1EA
(1) ForwardVoltage, Per Segment : 2.2V Max.
(2) Continuous Forward Current, Per Segment : 30mA
(3) Solder Temperature 1/16 inch Below Seating Plane 3 Seconds at 250℃ 2 Channels
8) Push Button---------------------------------4EA
9) DC Gear motor-------------------------2EA
(1) Input Voltage(DC.V) :3.5V
(2) Motor : HRF-300CA
(3) Reduction Ratio : 1:20
(4) MOTOR RPM : 5,100 +- 10%
(5) Output : RPM 250
(6) TORQUE(Kg.cm): 0.149
(7) P(Kg) : 0.3
(8) Gear : 3-step Gear
9) 3-color LED----------------------------1EA
(1) Standard PLCC-6 package (Plastic Leaded Chip Carrier) with individual addressable pin-out for higher flexibility of driving configuration.
(2) LED package with diff used silicone encapsulation
(3) Using AlInGaP and InGaN dice technologies
(4) Wide viewing angle at 120°
(5) Compatible with reflow soldering process
(6) JEDEC MSL 3
(7) Luminous Intensity Red : Min 560, Max 1124
(8) Luminous Intensity Green : Min 1400, Max 2850
(9) Luminous Intensity Blue : Min 285, Max 560
(1) Min. Sound Output at 10cm : 85dB
(2) Max. Current Consumption : 80mA
[ Smart gateway ]
(1) Power port, 1 ea
(2) On/Off Switch, 1 ea
(3) USB Port, 1 ea
(4) USB LED, 1 ea
(5) Ethernet 1 port, 1 ea
(6) Ethernet 2 ports, 4 ea
(7) Reset Switch, 1 ea
(8) Console port, 1 ea
(9) CPU MIPS74Kc@720 MHz
(10) RAM 128MBytes
(11) Boot Flash 512KBytes
(12) User Flash 16MBytes
(13) Ethernet 10/100/1000Base-T, WAN - 1 port
10/100/1000Base-T, LAN - 1 port (Switch - 4 ports)
(14) USB USB2.0 x 2 ea
(15) LEDs Power, RUN, Ethernet status
(16) AC Adaptor Power +12VDC/3A
[ Raspberry Module ]
(1) Core architecture : Quad-core ARM Cortex-A7
(2) CPU : 900MHz
(3) Memory : 1GB LPDDR2
(4) Operating system : Boots from Micro SD Card, running a version of the Linux Operating system
(5) Ethernet : 10/100 BaseT Ethernet socket
(6) Video Output : HDMI (rev 1.3 & 1.4)
(7) Audio Output : 3.5mm jack, HDMI
(8) USB : 4 x USB 2.0 Connector
(9) GPIO Connector : 40-pin 2.54mm, providing 27 GPIO pins
(10) Camera Connector : 15-pin MIPI
(11) Display Connector : Display Serial Interface (DSI) 15 way flat flex cable connector
[ Software programming ]
(1) Virtual Box
(4) OpenWRT IDE
(5) vi, Makefile, gcc