FMUSER Wirless Transmit Video And Audio More Easier !

[email protected] WhatsApp +8618078869184
Language

    Design of Internet of Things Multi-Sensor Monitoring Circuit Based on ARDUINO Development Board

     

    "The rise of the Internet of things (IOT) has inspired many innovative start-ups to seek opportunities to integrate into the next major change. However, the design teams of many start-ups are relatively streamlined, and they are also constrained by the increasingly shortened time to market. Therefore, each designer has to work in multiple engineering fields, including analog, digital, radio frequency (RF) and wireless / wired networks. Of course, they have been looking for ways to speed up the evaluation of IC, sensors and peripherals and reduce the evaluation cost. One approach is to use the evaluation and Development Suite provided by IC suppliers to support their solutions. If the support is very high, then this will be a good method. However, another option is to use the Arduino ecosystem. This ecosystem has developed from an amateur playground to a fully functional design and support ecosystem. This article describes how designers use Arduino to evaluate ICs, peripherals, and sensors early in the design cycle - using open source hardware such as sensors and peripheral breakout boards (bobs), combined with open source software such as various libraries and sample programs. This paper will take Maxim integrated real-time clock (RTC) and adafruit Industries Branch Board (Bob) as examples to discuss. The rise of the Internet of things The first real case of the Internet of things can be traced back to the early 1980s. At that time, a Coca Cola vending machine at Carnegie Mellon University in the United States was connected to the network. Programmers can use the Internet to check whether drinks are sold and cool. After confirmation, they really go to the vending machine. It was not until 1999 that the Internet of things was formally proposed as a concept. The exact time when the Internet of things really formed is still controversial. For us, the best definition of the birth of the Internet of things may be "when there are more 'things' or' objects' connected to the Internet than people". It is estimated that the Internet of things was born between 2008 and 2009, and the ratio of things to people increased from 0.08 in 2003 to 1.84 in 2010. Development of Arduino The birth of the Internet of things was accompanied by the rise of the maker movement in the early 2000s. The first global deployment of Arduino took place in 2005. Make magazine was released in the same year, and the first maker fair was held a year later. Since its establishment, Arduino has established a complex open source software and hardware ecosystem, but it lacks a way to introduce the well supported Arduino ecosystem into the boundaries of professional designers, so as to simplify its work and shorten the time to market. In fact, the solution came in an organic way: the huge ecosystem that grew around Arduino had unexpected side effects - professional engineers used Arduino to evaluate sensors and peripherals and then deployed them into their own designs. There are many such examples, such as RTC. Example of peripheral evaluation using RTC Almost every modern 32-bit microcontroller has integrated RTC, and many 16 bit or even 8-bit microcontrollers also have integrated RTC. Although this will reduce the area of circuit board, reduce materials (BOM) and reduce the cost of final product, there are some disadvantages in using internal RTC. One disadvantage is that the microcontroller must enable and disable the internal RTC under the control of software. Therefore, if something such as power failure occurs, resulting in the microcontroller locking or disordered code execution, the RTC may be accidentally disabled. In contrast, the external RTC has independent power rails and crystals, so it is more robust and unlikely to be accidentally shut down by the code running on the microcontroller. In addition, compared with the microcontroller, the external RTC is usually realized by larger chip manufacturing process nodes, and its large silicon wafer size makes it less prone to bit flip, that is, single event flip (SEU) caused by cosmic ray and other radiation. Example of RTC IC: DS1307 and ds3231 of Maxim integrated DS1307 and ds3231 of Maxim integrated are two popular RTC ICs. Both devices can record the information of seconds, minutes, hours, days of week, date, month and year, automatically adjust for months less than 31 days, consider leap years, and support 24-hour or 12-hour mode. Moreover, both devices communicate with the main microcontroller through the serial I2C bus and include a detection circuit that can detect power failure and automatically switch to the standby power supply (usually battery) - in this case, the device can still maintain timing operation (Fig. 1). Schematic diagram of DS1307 external RTC of Maxim Figure 1: DS1307 is a good example of external RTC. The advantage is that it has its own local crystal and power rail, and will not be affected by code failure. It communicates with the main microcontroller through the I2C interface( Image source: Maxim integrated) Of course, it is important to check the specifications to determine the differences between these devices. For example, the DS1307 requires a 5 V power supply and an external crystal. In contrast, the more sophisticated ds3231 can be powered by a 2.3 to 5.5 V power supply, and is equipped with an integrated temperature compensated crystal oscillator (TCXO) and crystal. Sometimes, the difference between these devices can not be seen at a glance. For example, both devices provide SQW (square wave) output. If activated under software control, an external pull-up resistor is required. However, for the DS1307, the SQW output is programmable to generate a 1 Hz, 4.096 kHz, 8.192 kHz, or 32.768 kHz signal. In contrast, for the ds3231, this output can be programmed to generate a 1 Hz, 1024 kHz, 4.096 kHz, or 8.192 kHz signal. In the case of DS1307, the clock accuracy depends on the accuracy of the crystal and the matching accuracy between the capacitive load of the oscillator circuit and the capacitive load for crystal adjustment. In contrast, ds3231 with temperature compensation has a more definite accuracy value in the range of - 40 ° C to + 85 ° C, i.e. within ± 2 minutes / year (Figure 2). Schematic diagram of ds3231 temperature compensated crystal oscillator of Maxim Figure 2: the ds3231 is a temperature compensated crystal oscillator with an accuracy of ± 2 minutes / year and an operating temperature range of - 40 ° C to + 85 ° C( Image source: Maxim integrated) Assuming that there are no factors hindering the adoption of these two devices from the specification, how can designers actually evaluate them? One solution is to design and build a custom breakout board (Bob) and develop code from scratch to drive components. Another faster and more cost-effective solution is to use the ready-made Bob and code in the Arduino hardware and software ecosystem. RTC Bob example: adafruit DS1307 and chronodot The two commonly used bobs of DS1307 and ds3231 IC are adafruit's 3296 DS1307 real-time clock Bob (Figure 3) and 255 chronodot ultra-high precision real-time clock v2.1 Bob (Figure 4). Adafruit DS1307 RTC Bob picture Figure 3: adafruit DS1307 RTC Bob( Source: adafruit industries Chronodot ultra high precision real-time clock v2.1 Bob picture Figure 4: chronodot ultra high precision real-time clock v2.1 Bob( Source: adafruit industries When used in combination with an appropriate microcontroller development board (such as Arduino uno R3), coupled with open source libraries and sample code that can be downloaded from the Internet, professional designers of embedded systems and IOT devices can immediately start the evaluation work. After completing the evaluation, designers can select the appropriate part of Bob's open source hardware design and directly integrate it into their own design. Similarly, they can use the open source library and its code developed based on open source examples as part of the product. Hardware skills and know-how for software developers As mentioned earlier, both DS1307 and ds3231 RTCs communicate with the main microcontroller through the serial I2C bus. One of the "problems" that often perplex software developers is that the two signals constituting the bus (called SCL and SDA respectively) need pull-up resistors. Adafruit's DS1307 or ds3231 (chronodot) Bob does not contain pull-up resistance, but chronodot has pads marked R1 and R2, on which resistance can be added. The reason why the pull-up resistor is not included is that the I2C bus can connect multiple devices (IC or Bob). The I2C bus uses a 7-bit address, 27 = 128. However, the address 0000000 is a general call address, which is used to address all devices on the bus. Therefore, in theory, the bus can support 127 discrete devices. In fact, the number of devices that the bus can support is determined by the capacitance of the bus (including the capacitance of wiring and load), and the total capacitance of the bus is limited to 400 picofar (PF). Hardware designers can use a formula to calculate the equivalent value of multiple parallel resistors. For the purpose of discussion, we can consider the following simple examples. If two devices have the same pull-up resistance, the equivalent resistance is half of that value; If four devices have the same pull-up resistance, the equivalent resistance is one fourth of this value. If an I2C device with a pull-up resistor already exists on the bus, no further action is required. If there is no pull-up resistance and the designer is 100% sure that they will not add Bob with pull-up resistance on the board in the future, it is best to use a pair of 4.7 kiloohm (K Ω) resistors as pull-up resistance. However, if it is possible to add a bob with pull-up resistance in the future, a pair of 10 K Ω resistors should be added at this time, because these resistors are effective before and after adding another Bob to the bus. Software skills and know-how for hardware designers "Wire library" is a communication library, which can be used for two-wire communication with I2C devices conveniently. For Arduino, this is provided as part of the integrated development environment (IDE), so designers only need to add the statement #include < wire. H > at the beginning of the program. The real trick is to find the right RTC library. A good example is adafruit's rtclib, which can be downloaded from GitHub. Next, add the statement #include "" rtclib. H "" at the beginning of the program. Then, usually after defining the constant value, you need to use the statement RTC according to the Bob used_ DS1307 RTC; Or RTC_ DS3231 RTC; Instantiate RTC (create its instance). Later, when all the settings are completed in the program (for Arduino sketch, it is part of the setup() function), the designer needs to add the statement wire. Begin(); And RTC. Begin(); To initialize the I2C communication and RTC subsystem. The examples provided on the GitHub page mentioned earlier allow designers to quickly start and run, and then access and adjust the current date and time. Less obvious is how to access SQW (square wave) output. By default, this output is inactive to save power. For example, one way to use this pin is to make it active and set an operating frequency such as 1 Hz, and then use this signal to trigger an interrupt on the main microcontroller. Software developers can easily find all these things in the library code, but it may be difficult for hardware design engineers to read this code. Therefore, a brief summary is given below: For DS1307, only one or more RTCs need to be added. Ds1307sqwpinmode (< Options >); The supported option values are on, off, squarewave1hz, squarewave4khz, squarewave8khz and squarewave32khz. Similarly, for ds3231, one or more RTCs should be added. Ds3231sqwpinmode (< Options >); The supported option values are on, off and ds3231_ SquareWave1Hz、DS3231_ SquareWave1kHz、DS3231_ Squarewave4khz and ds3231_ SquareWave8kHz。 conclusion Due to the small size of the team and the increasingly tight time to market, designers must undertake work in multiple engineering fields and constantly find ways to speed up the evaluation of IC, sensors and peripherals and reduce costs. As described in this article, one approach is to use Arduino with open source hardware such as sensors and peripheral distribution boards (bobs) and open source software such as libraries and sample programs. Article source network“

     

     

     

     

    List all Question

    Nickname

    Email

    Questions

    Our other product:

    Professional FM Radio Station Equipment Package

     



     

    Hotel IPTV Solution

     


      Enter email  to get a surprise

      fmuser.org

      es.fmuser.org
      it.fmuser.org
      fr.fmuser.org
      de.fmuser.org
      af.fmuser.org ->Afrikaans
      sq.fmuser.org ->Albanian
      ar.fmuser.org ->Arabic
      hy.fmuser.org ->Armenian
      az.fmuser.org ->Azerbaijani
      eu.fmuser.org ->Basque
      be.fmuser.org ->Belarusian
      bg.fmuser.org ->Bulgarian
      ca.fmuser.org ->Catalan
      zh-CN.fmuser.org ->Chinese (Simplified)
      zh-TW.fmuser.org ->Chinese (Traditional)
      hr.fmuser.org ->Croatian
      cs.fmuser.org ->Czech
      da.fmuser.org ->Danish
      nl.fmuser.org ->Dutch
      et.fmuser.org ->Estonian
      tl.fmuser.org ->Filipino
      fi.fmuser.org ->Finnish
      fr.fmuser.org ->French
      gl.fmuser.org ->Galician
      ka.fmuser.org ->Georgian
      de.fmuser.org ->German
      el.fmuser.org ->Greek
      ht.fmuser.org ->Haitian Creole
      iw.fmuser.org ->Hebrew
      hi.fmuser.org ->Hindi
      hu.fmuser.org ->Hungarian
      is.fmuser.org ->Icelandic
      id.fmuser.org ->Indonesian
      ga.fmuser.org ->Irish
      it.fmuser.org ->Italian
      ja.fmuser.org ->Japanese
      ko.fmuser.org ->Korean
      lv.fmuser.org ->Latvian
      lt.fmuser.org ->Lithuanian
      mk.fmuser.org ->Macedonian
      ms.fmuser.org ->Malay
      mt.fmuser.org ->Maltese
      no.fmuser.org ->Norwegian
      fa.fmuser.org ->Persian
      pl.fmuser.org ->Polish
      pt.fmuser.org ->Portuguese
      ro.fmuser.org ->Romanian
      ru.fmuser.org ->Russian
      sr.fmuser.org ->Serbian
      sk.fmuser.org ->Slovak
      sl.fmuser.org ->Slovenian
      es.fmuser.org ->Spanish
      sw.fmuser.org ->Swahili
      sv.fmuser.org ->Swedish
      th.fmuser.org ->Thai
      tr.fmuser.org ->Turkish
      uk.fmuser.org ->Ukrainian
      ur.fmuser.org ->Urdu
      vi.fmuser.org ->Vietnamese
      cy.fmuser.org ->Welsh
      yi.fmuser.org ->Yiddish

       
  •  

    FMUSER Wirless Transmit Video And Audio More Easier !

  • Contact

    Address:
    No.305 Room HuiLan Building No.273 Huanpu Road Guangzhou China 510620

    E-mail:
    [email protected]

    Tel / WhatApps:
    +8618078869184

  • Categories

  • Newsletter

    FIRST OR FULL NAME

    E-mail

  • paypal solution  Western UnionBank OF China
    E-mail:[email protected]   WhatsApp:+8618078869184   Skype:sky198710021 Chat with me
    Copyright 2006-2020 Powered By www.fmuser.org

    Contact Us