IoT Monitoring System for Commercial Fridges

Using LoRa Technology

IoT implementations can take many shapes and forms. Learn how these four Camosun College students developed a system to monitor all the refrigeration units in a commercial kitchen simultaneously. The system uses Microchip PIC MCU-based monitoring units and wireless communication leveraging the LoRa wireless protocol.

By Tyler Canton, Akio Yasu, Trevor Ford and Luke Vinden

In 2017, the commercial food service industry created an estimated 14.6 million wet tons of food in the United States [1]. The second leading cause of food waste in commercial food service, next to overproduction, is product loss due to defects in product quality and/or equipment failure [2].

While one of our team members was working as the chef of a hotel in Vancouver, more than once he’d arrive at work to find that the hotel’s refrigeration equipment had failed overnight or over the weekend, and that thousands of dollars of food had become unusable due to being stored at unsafe temperatures. He always saw this as an unnecessary loss—especially because the establishment had multiple refrigeration units and ample space to move product around. In this IoT age, this is clearly a preventable problem.

For our Electronics & Computer Engineering Technologist Capstone project, we set forth to design a commercial refrigeration monitoring system that would concurrently monitor all the units in an establishment, and alert the chefs or managers when their product was not being stored safely. This system would also allow the chef to check in on his/her product at any time for peace of mind (Figure 1).

Figure 1
This was the first picture we took of our finished project assembled. This SLA printed enclosure houses our 10.1″ LCD screen, a Raspberry Pi Model 3B and custom designed PCB.

We began with some simple range testing using RFM95W LoRa modules from RF Solutions, to see if we could reliably transmit data from inside a steel box (a refrigerator), up several flights of stairs, through concrete walls, with electrical noise and the most disruptive interference: hollering chefs. It is common for commercial kitchens to feel like a cellular blackout zone, so reliable communication would be essential to our system’s success.

System Overview

We designed our main unit to be powered and controlled by a Raspberry Pi 3B (RPi) board. The RPi communicates with an RFM95W LoRa transceiver using Serial Peripheral Interface (SPI). This unit receives temperature data from our satellite units, and displays the temperatures on a 10.1″ LCD screen from Waveshare. A block diagram of the system is shown in Figure 2. We decided to go with Node-RED flow-based programming tool to design our GUI. This main unit is also responsible for logging the data online to a Google Form. We also used Node-RED’s “email” nodes to alert the users when their product is stored at unsafe temperatures. In the future, we plan to design an app that can notify the user via push notifications. This is not the ideal system for the type of user that at any time has 1,000+ emails in their inbox, but for our target user who won’t allow more than 3 or 4 to pile up it has worked fine.

Figure 2
The main unit can receive temperature data from as many satellite units as required. Data are stored locally on the Raspberry Pi 3B, displayed using a GUI designed by Node-RED and logged online via Google Sheets.

We designed an individual prototype (Figure 3) for each satellite monitoring unit, to measure the equipment’s temperature and periodically transmit the data to a centralized main unit through LoRa communication. The units were intended to operate at least a year on a single battery charge. These satellites, controlled by a Microchip Technology PIC24FJ64GA704 microcontroller (MCU), were designed with an internal Maxim Integrated DS18B20 digital sensor (TO-92 package) and an optional external Maxim

Figure 3
This enclosure houses the electronics responsible for monitoring the temperatures and transmitting to the main unit. These were 3D printed on Ultimaker 3 printers.

Integrated DS18B20 (waterproof stainless steel tube package) to measure the temperature using the serial 1-Wire interface.

Hardware

All our boards were designed using Altium Designer 2017 and manufactured by JLCPCB. We highly recommend JLCPCB for PCB manufacturing. On a Tuesday we submitted our order to the website, and the finished PCB’s were manufactured, shipped, and delivered within a week. We were amazed by the turnaround time and the quality of the boards we received for the price ($2 USD / 10 PCB).

Figure 4
The main unit PCB’s role is simply to allow the devices to communicate with each other. This includes the RFM95W LoRa transceivers, RPi, LCD screen and a small fan

Main Unit Hardware: As shown in Figure 4, our main board’s purpose is communicating with the RPi and the LCD. We first had to select an LCD display for the main unit. This was an important decision, as it was the primary human interface device (HID) between the system and its user. We wanted a display that was around 10″—a good compromise between physical size and readability. Shortly after beginning our search, we learned that displays between 7″ and 19″ are not only significantly more difficult to come by, but also significantly more expensive. Thankfully, we managed to source a 10.1″ display that met our budget from robotshop.com. On the back of the display was a set of female header pins designed to interface with the first 26 pins of the RPi’s GPIO pins. The only problem with the display was that we needed access to those same GPIO pins to interface with the rest of our peripherals.

Figure 5
Our main board, labeled Mr. Therm, was designed to attach directly to the LCD screen headers. RPi pins 1-26 share the same connectivity as the main board and the LCD.

We initially planned on fixing this problem by placing our circuit board between the RPi and the display, creating a three-board-stack. Upon delivery and initial inspection of the display, however, we noticed an undocumented footprint that was connected to all the same nets directly beneath the female headers. We quickly decided to abandon the idea of the three-board-stack and decided instead to connect our main board to that unused footprint in the same way the RPi connects to display (Figure 5). This enabled us to interface all three boards, while maintaining a relatively thin profile. The main board connects four separate components to the rest of the circuit. It connects the RFM95W transceiver to the RPi, front panel buttons, power supply and a small fan.

Read the full article in the April 345 issue of Circuit Cellar
(Full article word count: 3378 words; Figure count: 11 Figures.)

Don’t miss out on upcoming issues of Circuit Cellar. Subscribe today!

Note: We’ve made the October 2017 issue of Circuit Cellar available as a free sample issue. In it, you’ll find a rich variety of the kinds of articles and information that exemplify a typical issue of the current magazine.

High-Speed RS-485 Transceivers Target IIoT Networks

Intersil, a subsidiary of Renesas Electronics, has announced two new high-speed, isolated RS-485 differential bus transceivers that provide 40 Mbps bidirectional data communication for Industrial Internet of Things (IIoT) networks. The ISL32741E offers 1,000 VRMS working voltage and 6 kV of reinforced isolation, more than 2x higher than Intersil isl32740e-41e-transceiver-promocompetitive solutions. The higher working voltage and reinforced isolation is required for today’s most rigorous medical and high-speed motor control applications. The ISL32740E with 2.5kV of isolation and 600VRMS working voltage comes in a small package, enabling high channel density for programmable logic controllers (PLCs) in factory automation applications.

The ISL3274xE transceivers provide additional advantages over other isolation technologies, including ultra-low radiated emission and EMI susceptibility, support for up to 160 devices on the bus, and an extended 125°C temperature range. These devices leverage giant magneto-resistance (GMR) technology that provides galvanic isolation to keep the communication bus free from common-mode noise generated in electrically noisy factory and building automation environments. The ISL32740E and ISL32741E 40 Mbps RS-485 transceivers are available now with prices ranging from $3.79 to $4.79 depending on package type and temperature range. Evaluation boards are available for $99.

Intersil | www.intersil.com

Rugged RS-485 Transceivers for PROFIBUS-DP Networks

Linear Technology recently introduced the LTC2876 and LTC2877, which are high-voltage-tolerant RS-485 transceivers targeted for PROFIBUS-DP (decentralized periphery) networks. Whether transmitting,  receiving, in standby or powered off, the LTC2876 and LTC2877 tolerate ±60 V on their bus pins, eliminating common damage due to transmission line faults.Linear 2877
LTC2876 and LTC2877 features and specs:

  • Protected from overvoltage line faults to ±60 V
  • ±52-kV ESD Interface Pins, ±15 kV on all other pins
  • Extended common mode range: ±25 V
  • 1.65-to-5.5-V Logic supply pin for flexible digital interfacing (LTC2877)
  • 5-V Supply can operate down to 3 V for low-power, low-swing applications
  • Wide operating temperature range: –40°C to 125°C
  • Available in small DFN and MSOP packages

Source: Linear Technology 

A Workspace for “Engineering Magic”

Brandsma_workspace2

Photo 1—Brandsma describes his workspace as his “little corner where the engineering magic happens.”

Sjoerd Brandsma, an R&D manager at CycloMedia, enjoys designing with cameras, GPS receivers, and transceivers. His creates his projects in a small workspace in Kerkwijk, The Netherlands (see Photo 1). He also designs in his garage, where he uses a mill and a lathe for some small and medium metal work (see Photo 2).

Brandsma_lathe_mill

Photo 2—Brandsma uses this Weiler lathe for metal work.

The Weiler lathe has served me and the previous owners for many years, but is still healthy and precise. The black and red mill does an acceptable job and is still on my list to be converted to a computer numerical control (CNC) machine.

Brandsma described some of his projects.

Brandsma_cool_projects

Photo 3—Some of Brandsma’s projects include an mbed-based camera project (left), a camera with an 8-bit parallel databus interface (center), and an MP3 player that uses a decoder chip that is connected to an mbed module (right).

I built a COMedia C328 UART camera with a 100° lens placed on a 360° servomotor (see Photo 3, left).  Both are connected to an mbed module. When the system starts, the camera takes a full-circle picture every 90°. The four images are stored on an SD card and can be stitched into a panoramic image. I built this project for the NXP mbed design challenge 2010 but never finished the project because the initial idea involved doing some stitching on the mbed module itself. This seemed to be a bit too complicated due to memory limitations.

I built this project built around a 16-MB framebuffer for the Aptina MT9D131 camera (see Photo 3, center). This camera has an 8-bit parallel databus interface that operates on 6 to 80 MHz. This is way too fast for most microcontrollers (e.g., Arduino, Atmel AVR, Microchip Technology PIC, etc.). With this framebuffer, it’s possible to capture still images and store/process the image data at a later point.

This project involves an MP3 player that uses a VLSI VS1053 decoder chip that is connected to an mbed module (see Photo 3, right). The great thing about the mbed platform is that there’s plenty of library code available. This is also the case for the VS1053. With that, it’s a piece of cake to build your own MP3 player. The green button is a Skip button. But beware! If you press that button it will play a song you don’t like and you cannot skip that song.

He continued by describing his test equipment.

Brandma_test_equipment

Photo 4—Brandsma’s test equipment collection includes a Tektronix TDS220 oscilloscope (top), a Total Phase Beagle protocol analyzer (second from top), a Seeed Technology Open Workbench Logic Sniffer (second from bottom), and a Cypress Semiconductor CY7C68013A USB microcontroller (bottom).

Most of the time, I’ll use my good old Tektronix TDS220 oscilloscope. It still works fine for the basic stuff I’m doing (see Photo 4, top). The Total Phase Beagle I2C/SPI protocol analyzer Beagle/SPI is a great tool to monitor and analyze I2C/SPI traffic (see Photo 4, second from top).

The red PCB is a Seeed Technology 16-channel Open Workbench Logic Sniffer (see Photo 4, second from bottom). This is actually a really cool low-budget open-source USB logic analyzer that’s quite handy once in a while when I need to analyze some data bus issues.

The board on the bottom is a Cypress CY7C68013A USB microcontroller high-speed USB peripheral controller that can be used as an eight-channel logic analyzer or as any other high-speed data-capture device (see Photo 4, bottom). It’s still on my “to-do” list to connect it to the Aptina MT9D131 camera and do some video streaming.

Brandsma believes that “books tell a lot about a person.” Photo 5 shows some books he uses when designing and or programming his projects.

Brandsma_books

Photo 5—A few of Brandsma’s “go-to” books are shown.

The technical difficulty of the books differs a lot. Electronica echt niet moeilijk (Electronics Made Easy) is an entry-level book that helped me understand the basics of electronics. On the other hand, the books about operating systems and the C++ programming language are certainly of a different level.

An article about Brandsma’s Sun Chaser GPS Reference Station is scheduled to appear in Circuit Cellar’s June issue.