Blog

  • 6 Best and Latest Smart Home Gadgets

    6 Best and Latest Smart Home Gadgets

    In this blog post today, we will be outlining the best 6 latest smart home gadgets in the world.

    6 Best Smart Home Gadgets

    1.Amazon Echo

    latest smart home gadgets
    latest smart home gadgets

    From the little Dot, Alexa has long been available to help. Amazon’s tiniest smart speaker now resembles a ball, just like its larger sister. The revised orb, which is wrapped in fabric, has gentle style to go with most decors and has a fun yet timeless feel.

    The digital assistant can be activated without stating her name by using a ‘Alexa’ input while volume and privacy are controlled by buttons on top. You may add a tenner more and get a built-in clock as well. This can also indicate timers and alarms in addition to the time.

    It couldn’t be simpler to set up for people who are familiar with Alexa. For such a small device, sound quality is surprisingly powerful. The smart sphere obviously lacks bass, but it works just fine for playing music, controlling other Alexa-enabled devices around the house, and listening to the radio.

    2.Google Nest Audio

    Apple has its own domestic dome, not to be outdone. Also, the HomePod Mini adheres to the dress code by donning a stylish fabric jacket, just like the Echo Dot and Nest Audio. A touch-sensitive top is also included for simple interaction.

    The HomePod Mini, which has Siri at its core, can perform all the typical smart speaker functions, like as setting timers, checking the weather, and organizing calendar events. It also functions as a HomeKit Hub for managing your smart home devices.

    The Mini packs a surprisingly powerful sound for such a tiny device. While it cannot make the same high-fidelity promises as the original HomePod, its single driver is excellent at delivering energizing sound in 360 degrees. This is a terrific way to connect if you are already a part of the Apple ecosystem.

    3.Ring Indoor Cam

    Although Wi-Fi doorbells cannot open the door for guests, they can assist you in determining whether getting up from the couch to answer the door yourself is worthwhile. These digital bouncers have cameras, and when someone presses their button, they ping real-time alerts to your smartphone and show a live video of the doorstep lurker.

    The second-generation Ring is still a respectable dinger even though it isn’t the most modern video doorbell you can buy. You get night vision, motion detection, two-way communication, and 1080p video from your front door, so you can instruct calling couriers where to hide your items even if you’re not home.

    The rechargeable Ring works well with Alexa and can send a live feed to Echo Show devices when it is connected to your Wi-Fi network. Spend £2.50 a month on Ring Protect to gain access to other capabilities, such as the crucial ability to record, save, and share captured footage.

    4.Philips Hue

    Modified on August 31, 2017: For the Hue line, Philips has just revealed some new software and hardware delights that will debut later in 2017.

    The most intriguing is a free software upgrade for December 2017 that claims to assist your lights match with particular video games, films, or musical compositions. Philips calls it “surround sound for the eyes,” but we prefer to think of it as an enhanced version of the Ambilight technology used in its TVs.

    5.Dyson V15 Detect Absolute

    Just when you thought Dyson couldn’t get much better, the Dyson V15 Detect Absolute vacuum cleaner was developed. It is a more potent, durable vacuum.

    The fact that Dyson equipped its new flagship with a piezo acoustic sensor and laser for measuring and lighting dust, however, only tells half the tale.

    6.Amazon Echo Show 10 review

    Although Amazon’s Echo Show has only been available for four months, it already seems to have undergone more changes than Batman.

    The Echo Show 10 is come to increase the capabilities of the Alexa-powered smart display, which should further confuse you. It has a 10.1-inch touchscreen and a front-facing camera, just like the second-generation Echo Show from 2018, but this time it’s mounted to what somewhat like an Echo Studio. It uses a silent (and hence slightly unsettling) motor to follow you around the room.

    READ MORE

  • Ancient Proteins Provide New Perspectives on Earth’s Origin of Life

    Researchers have discovered that without particular amino acids, ancient proteins would not have known how to grow into everything alive on the planet today, including plants, animals, and people. This was discovered by mimicking early Earth circumstances in the lab. The results help to solve the riddle of how life first appeared on Earth by revealing how amino acids influenced the genetic code of early bacteria. “You see the same amino acids in every organism, from humans to bacteria to archaea, and that’s because all things on Earth are connected through this tree of life that has an origin, an organism that was the ancestor to all living things,” said Stephen Fried, a chemist at Johns Hopkins who co-led the research with researchers at Charles University in the Czech Republic. We’re discussing the circumstances that influenced how that ancestor acquired the specific amino acids it did. By employing a different set of amino acids that were extremely abundant before life emerged on Earth, the researchers were able to simulate the creation of primordial proteins 4 billion years ago in the laboratory.

    Research into the Origins of Life

    They discovered that the biochemistry of prehistoric organic substances included the amino acids most suitable for protein folding. To put it another way, life evolved on Earth because some amino acids were available and simple to synthesize in prehistoric settings, as well as because some of them were particularly good at assisting proteins in taking on particular forms to carry out essential activities. Before there was even life on our planet, protein folding essentially allowed for evolution, according to Fried. “Evolution might have occurred before biology, and even before DNA, there could have been natural selection for the molecules necessary for life.” Even though there are just 20 of these molecules used by all living organisms, the original Earth had hundreds of amino acids. Fried refers to those substances as “canonical.” Yet, research has had difficulty identifying what, if anything, makes those 20 amino acids unique.

    Life on Earth

    Earth’s atmosphere throughout its first billion years was made up of a variety of gases, including ammonia and carbon dioxide, which combined with intense ultraviolet radiation to create some of the simplest classical amino acids. Others arrived via special delivery by meteorites, which brought a variety of components and finished off a set of 10 “early” amino acids that helped life on Earth. Fried’s team is attempting to address this unanswered topic with the new findings, particularly given that those space pebbles brought far more than the “contemporary” amino acids. We’re looking into what made our canonical amino acids so unique, said Fried. Was there a specific reason they were chosen? According to scientific estimates, the Earth is 4.6 billion years old, and it took until 3.8 billion years ago for DNA, proteins, and other chemicals to start forming primitive life. The latest research provides fresh hints on the enigma of what transpired in between.

    The Beginning of Life

    “A complex method of converting genetic materials like DNA and RNA into proteins is required for evolution in the Darwinian sense. Hence, proteins are also necessary for DNA replication, so we have a chicken-and-egg issue “explained Fried. Our study demonstrates that, prior to Darwinian evolution, nature might have chosen to favor building blocks with advantageous characteristics. Amino acids have been found in asteroids distant from Earth, indicating that these substances are common across the universe. Fried believes that the new findings may also have an impact on the likelihood of discovering life in space. Fried observed, “The universe seems to love amino acids. “Maybe it wouldn’t be that different if we discovered life on a different planet. The NIH Director’s New Innovator Award and the Human Frontier Science Program grant HFSP-RGY0074/2019 both provided funding for this study (DP2-GM140926). Johns Hopkins University’s Anneliese M. Faustino, Charles University’s Mikhail Makarov, Alma C. Sanchez Rocha, Ivan Cherepashuk, Robin Krystufek, and Klara Hlouchova, the Czech Academy of Sciences’s Tatsiana Charnavets, Michal Lebl, and Tokyo Institute of Technology’s Kosuke Fujishima are authors.

    Read More

  • Observation and Assimilation are Habits in     Which Bumblebees Learns New ‘Trends’

    Observation and Assimilation are Habits in Which Bumblebees Learns New ‘Trends’

    The study, conducted by Queen Mary University of London and published in PLOS Biology, offers compelling evidence that social learning is a major factor in the spread of bumblebee behavior, namely their foraging habits. To prove this, numerous experiments were conducted. The researchers created a two-option puzzle box that could be opened by pushing a red tab in one direction or a blue tab in the opposite direction to reveal a reward of a 50% sucrose solution. ‘Observer’ bees watched as ‘demonstrator’ bees were trained to use either the red or blue tabs. When it was the observers’ turn to solve the puzzle, they consistently and overwhelmingly went with the same approach they had observed, even after learning about the other choice. Whole bee colonies continued to favor the taught option, with a mean of 98.6% of box openings being performed using it.

    Bumblebees Learns New
    Bumblebees Learns New

    The control group, which lacked a demonstration, further demonstrated the significance of social learning in the acquisition of puzzle box answers. Some bees in this group were able to open the puzzle boxes, but they did so much less frequently than those who had the advantage of witnessing an earlier success. The observer bees using a demonstration opened an average of 28 boxes per day, compared to just 1 for the control colony. In a separate experiment, the researchers introduced bee colonies with both “blue” and “red” demonstrators. By day 12, 97.3% of the 263 box-opening instances by observers in the first population had utilized the red approach. On all but one of the days in the second population, observers chose the blue approach over the red one. In both instances, this showed how a behavioral trend may first appear in a population—most often as a result of seasoned foragers retiring and new learners emerging, rather than any bees changing their favored behavior.

    Bumblebees Life cycle

    Similar findings from comparable studies have been applied to species like birds and primates to imply that they, like humans, are capable of culture. If bumblebees are able to do this as well, this may help to shed light on the evolutionary roots of many of the sophisticated behaviors observed in social insects. What now seems instinctual might have, at least initially, been learned through social interaction. Lead scientist Dr. Alice Bridges of Queen Mary University of London said: “It is unknown whether bumblebees or invertebrates in general exhibit cultural traits in their natural habitats. In contrast, we observed in our tests that groups of bumblebees maintained and disseminated a behavioral “trend” that was comparable to that observed in primates and birds. Even while social insects like these bumblebees have some of the most complex behavioral repertoires known to humankind, the majority of their behavior is still believed to be innate. According to our research, social learning may have had more of an impact than previously thought on the development of this behavior.”

    The Mind of a Bee author Professor Lars Chittka of Queen Mary University of London said: “The fact that bees can watch and learn, and then practice that behavior, adds to the ever-growing body of evidence that they are considerably brighter creatures than a lot of people give them credit for. “We tend to overlook the “alien civilizations” formed by bees, ants and wasps on our planet — because they are small-bodied and their societies and architectural constructions seem governed by instinct at first glance. Our research shows, however, that new innovations can spread like social media memes through insect colonies, indicating that they can respond to wholly new environmental challenges much faster than by evolutionary changes, which would take many generations to manifest.”

    New Behavioral Trends

    READ MORE

  • Najlepsze opcje gier online w polskich kasynach



    Najlepsze gry online w polskich kasynach 2026



    Najlepsze opcje gier online w polskich kasynach

    Jeżeli szukasz doświadczeń, które dostarczą Ci niezapomnianych emocji, zwróć uwagę na automaty wideo z interaktywnymi bonusami. Tego typu tytuły zyskują na popularności, oferując nie tylko klasyczną rozgrywkę, ale także zaawansowane funkcje, takie jak darmowe spiny czy gry dodatkowe.

    Rozważ także stoły do gier karcianych, gdzie możesz zasiąść do rozgrywki przy popularnych grach, takich jak blackjack czy poker. To doskonała okazja, by zmierzyć się z innymi graczami i sprawdzić swoje umiejętności w strategicznej rywalizacji.

    Wybierając platformę, zwróć uwagę na vavada kazino, która oferuje różnorodne opcje dla entuzjastów gier kasynowych. Znajdziesz tam bogaty wybór tytułów dostosowanych do różnych preferencji, co sprawi, że spędzisz czas w sposób niezwykle satysfakcjonujący.

    Topowe automaty do gier dostępne w polskich kasynach

    Na szczycie zestawienia automatycznych maszyn z pewnością znajduje się “Book of Dead”. Ten klasyczny tytuł od Play’n GO przyciąga graczy ekscytującą tematyką starożytnego Egiptu oraz możliwościami uzyskania dużych wygranych przez darmowe spiny i rozszerzające się symbole. To pozycja, którą warto wypróbować, zwłaszcza dla miłośników przygód.

    Bezkonkurencyjna grafika i mechanika

    Następna w kolejności jest “Starburst” od NetEnt, która od lat cieszy się popularnością. Ten automatyczny hit wyróżnia się kolorową grafiką i prostą mechaniką, co sprawia, że jest odpowiedni zarówno dla nowicjuszy, jak i zaawansowanych graczy. Oferuje niesamowite możliwości, zwłaszcza dzięki funkcji respin, która zwiększa szanse na wygraną.

    Warto również zwrócić uwagę na “Fire Joker” od Play’n GO. Ten owocowy automat łączy w sobie klasyczne symbole z nowoczesną rozgrywką. Jego funkcja Bonus Game daje dodatkowe szanse na zgarnięcie większych wygranych. Dodatkowo, jego szybkość sprawia, że gra jest dynamiczna i wciągająca.

    Interaktywność i tematyka

    Na koniec warto spróbować “Wolf Gold” od Pragmatic Play, który oferuje przyjemne połączenie tematyki natury z dynamicznymi funkcjami bonusowymi. Dzięki wyjątkowym grafiką oraz progresywnym jackpotom, ten automat może okazać się bardzo opłacalny. Wybór tytułów jest ogromny, a każdy z nich oferuje coś wyjątkowego. Przekonaj się sam!

    Najlepsze strategie w grach karcianych online

    Skup się na zarządzaniu swoim bankroll’em. Ustal z góry, jaką kwotę jesteś gotów zainwestować, a następnie trzymaj się tego limitu. Niech twoje decyzje będą oparte na analizie, a nie emocjach. Dobre rozplanowanie budżetu pozwoli ci unikać impulsywnych wydatków i zwiększy szanse na sukces.

    Podstawowe strategie w pokerze

    W pokerze kluczowe jest pozycjonowanie przy stole. Grając z późniejszej pozycji, masz dostęp do więcej informacji o ruchach innych graczy. Warto obserwować ich styl gry i dostosowywać swoje strategie do ich zachowań. Rozważ także blefowanie, ale rób to z umiarem; blef powinien być używany jako sporadyczny element, a nie stała taktyka.

    Z kolei w Blackjacku istotna jest znajomość tabeli bazowej. Poznanie, kiedy dobierać, a kiedy stać, na podstawie wartości wykładanych kart przeciwnika, jest kluczowe dla minimalizowania przewagi kasyna. Pamiętaj o technice podziału par czy podwajaniu stawki, które mogą znacząco zwiększyć twoje szanse na wygraną.

    Analiza przeciwników

    W każdej karcianej rywalizacji analiza przeciwników to kluczowy element. Zwracaj uwagę na ich tendencje, preferencje oraz reakcje na różne sytuacje. Używaj tych informacji, aby dostosować swoją strategię i czasami zaskoczyć rywali. Zarówno gra emocjonalna, jak i analityczne podejście mogą przynieść ci sukces w dłuższej perspektywie.

    Jak wybrać bezpieczne kasyno online w Polsce?

    Przede wszystkim, sprawdź licencję instytucji regulującej daną platformę. Zarejestrowane miejsca powinny posiadać zezwolenie od takich organów jak Malta Gaming Authority czy UK Gambling Commission. To gwarantuje, że wszystkie działania są zgodne z prawem, a także zapewnia ochronę graczy. Warto zwrócić uwagę na transparentność w zakresie regulacji.

    • Weryfikacja licencji
    • Opinie użytkowników
    • Warunki korzystania

    Drugim etapem jest analiza oferowanych metod płatności. Bezpieczne platformy powinny umożliwiać korzystanie z zaufanych systemów, takich jak PayU, Skrill, czy PayPal. Ważne jest, aby sprawdzić także czas realizacji wypłat oraz ewentualne opłaty związane z transakcjami. Im mniej komplikacji, tym lepiej.

    1. Sprawdź metody wpłat i wypłat
    2. Unikaj wysokich opłat
    3. Testuj szybkość transakcji

    Na koniec, zwróć uwagę na politykę ochrony danych osobowych. Platformy powinny przestrzegać przepisów RODO i zapewniać, że Twoje dane będą bezpieczne. Zwróć uwagę na używane technologie szyfrowania, takie jak SSL. Dzięki temu możesz grać w spokojniejszej atmosferze.


  • 6 Super Old, Massive Galaxies That Shouldn’t Exist.

    6 Super Old, Massive Galaxies That Shouldn’t Exist.

    Six hypothetical galaxies that may have formed so early in the universe’s history and that are so enormous that they shouldn’t be viable based on current cosmological theory have been found by an international team of astrophysicists in a recent study. These massive galaxies, occurred approximately 500–700 million years after the Big Bang, or more than 13 billion years ago, each candidate galaxy may have been there at the beginning of the universe. Moreover, they are enormous, holding almost as many stars as the present-day Milky Way Galaxy.

    massive galaxies
    massive galaxies

    On February 22, Nelson and her colleagues—among them the first author, Ivo Labbé of Australia’s Swinburne University of Technology—published their findings in the journal Nature. The most potent telescope ever sent into space, James Webb, which launched in December 2021, has not yet discovered the first galaxies. Another team of researchers discovered four galaxies last year that most likely formed from gas 350 million years after the Great Bang. But in comparison to the new galaxies, those objects were practically shrimpy, with many times less star mass. To be certain that these galaxies are as large and ancient as they appear, the astronomers still need more information. Nonetheless, their preliminary findings provide an enticing glimpse of.

    Nelson added, “Another option is that these things are some other kind of odd phenomenon, like feeble quasars, which would be as fascinating blurred dots. There is a lot of excitement: Nelson and her colleagues, who are from the United States, Australia, Denmark, and Spain, organized an ad hoc team last year to look into the information James Webb was returning to Earth. Their most recent discoveries are from the Cosmic Evolution Early Release Science (CEERS) Survey carried out by the telescope. The Hubble Space Telescope initially studied this region of space in the 1990s. These photographs delve deeply into a piece of sky around the Big Dipper, which is a very uninteresting part of space at first view.

    massive galaxies
    Early galaxy formation

    Nelson was looking at a portion of an image the size of a postage stamp. Those were so vivid and red,” Nelson remarked. “We didn’t anticipate seeing them.” She clarified that red light typically indicates old light in astronomy. Nelson claimed that the universe has been growing ever from the beginning of time. Imagine it as the cosmic version of salty taffy: as it expands, galaxies and other celestial objects move farther apart, and the light they generate stretches out. To human eyes, light seems redder the more it stretches. (Light from objects traveling closer to Earth, in comparison, looks bluer). The scientists performed calculations and found that their previous galaxies were equally as massive as the Milky Way, containing tens to hundreds of billions of sun-sized stars worth of mass.

    According to Nelson, the Milky Way creates one to two new stars each year. During the duration of the cosmos, some of these galaxies “would have to be producing hundreds of new stars a year.” Nelson and her colleagues are eager to learn more about these enigmatic items using James Webb, but they have already seen enough to peak their interest. First off, based on calculations, it seems unlikely that there was enough normal matter—the kind that forms up planets and human bodies—at that time to produce that many stars so quickly. The existence of even one of these galaxies would test the boundaries of cosmology, according to Nelson. Seeing the past Nelson says the new discoveries mark the end of a journey that started while she was in elementary school. She wrote a report about the Hubble telescope, which was launched in 1990 and is still operational today, when she was ten years old. Nelson had a fixation.

    a beautiful galaxy

    She explained that since it takes time for light to get from a galaxy to Earth, viewing these things involves gazing back in time. That idea was so incredible to me that I knew right away that this was what I wanted to accomplish with my life. According to Nelson, the rapid rate of discovery with James Webb is similar to that of Hubble in its early years. Many scientists at the time had the opinion that galaxies didn’t start forming until billions of years after the Great Bang. But, it didn’t take long for scientists to realize that the early cosmos was far more interesting and intricate than they had first thought. “Even if we learnt our lesson earlier from Hubble, we still didn’t expect James Webb to observe such developed galaxies existing so far back in time,” Nelson said. “I’m very happy.” Pieter van Dokkum from Yale University, Katherine Suess from the University of California, Santa Cruz, Joel Leja, Elijah Matthews, and Bingjie Wang from the Pennsylvania State University, Gabriel Brammer, Katherine Whitaker, and Mauro Stefanon from the University of Valencia are also co-authors on the new study.

    Conclusion

    The recent discovery of these 6 old massive galaxies is breathtaking. We hope to know more about these in the future. We would like to know what you think about this space discovery. Let us know in the comment section below.

    Read More

  • Robot that teaches dog how to walk in an hour.

    Robot that teaches dog how to walk in an hour.

    Robot that teaches dog how to walk in an hour.
    robot that teaches dog

    Robot that teaches dog;

    To evade predators, a baby giraffe or foal must learn to move as quickly as possible on its legs. Animals have networks for coordinating their muscles in their spinal cords from birth. Yet, it takes some time to master the perfect coordination of the tendons and muscles of the legs. Animal young first rely significantly on hardwired reflexes in the spinal cord. The animal’s motor control reflexes, however considerably more primitive, enable it avoid falling and harming itself when it first tries to walk. After that, it is necessary to practice more complex and exact muscle control until the nervous system has eventually become fully attuned to the young animal’s leg muscles and tendons. The young animal is no longer floundering around aimlessly; it can now keep up with the adults.

    To better understand how animals learn to walk and learn from mistakes, scientists at the Max Planck Institute for Intelligent Systems (MPI-IS) in Stuttgart undertook a study. They created a four-legged, canine-sized robot to aid in their analysis of the situation.

    According to Felix Ruppert, a former doctorate student in the Dynamic Locomotion research group at MPI-IS, “As engineers and roboticists, we sought the answer by constructing a robot that displays reflexes just like an animal and learns from mistakes.” “Is it a mistake if an animal stumbles? Not if it just occurs once. However, if it trips up regularly, it tells us how well the robot walks.”

    “Learning Plastic Matching of Robot Dynamics in Closed-loop Central Pattern Generators,” which will be released on July 18, 2022 in the journal Nature Machine Intelligence, has Felix Ruppert as its first author.

    Virtual spinal cord optimization using learning algorithm

    Ruppert’s robot makes effective use of its intricate leg mechanics after learning to walk in just one hour. The learning is guided by a Bayesian optimization algorithm, which compares the target data from the modeled virtual spinal cord running as a program in the robot’s computer with the measured foot sensor information. By executing reflex loops, comparing sent and expected sensor data, and modifying its motor control patterns, the robot gradually learns to walk.

    A Central Pattern Generator’s control settings are adjusted by the learning algorithm (CPG). These central pattern generators in both humans and animals are networks of neurons in the spinal cord that cause regular muscle contractions without brain input. Networks with central pattern generators help create rhythmic actions like blinking, walking, or digestion. Furthermore, brain connections that are hard-wired and connect sensors in the leg to the spinal cord cause reflexes, which are involuntary motor control actions.

    As long as the young animal walks over a perfectly flat surface, CPGs can be sufficient to control the movement signals from the spinal cord. A small bump on the ground, however, changes the walk. Reflexes kick in and adjust the movement patterns to keep the animal from falling. These momentary changes in the movement signals are reversible, or “elastic,” and the movement patterns return to their original configuration after the disturbance. But if the animal does not stop stumbling over many cycles of movement—despite active reflexes—then the movement patterns must be relearned and made “plastic,” i.e., irreversible. In the newborn animal, CPGs are initially not yet adjusted well enough and the animal stumbles around, both on even or uneven terrain. But the animal rapidly learns how its CPGs and reflexes control leg muscles and tendons.

    The same holds true for the Labrador-sized robot-dog named Morti. Even more, the robot optimizes its movement patterns faster than an animal, in about one hour. Morti’s CPG is simulated on a small and lightweight computer that controls the motion of the robot’s legs. This virtual spinal cord is placed on the quadruped robot’s back where the head would be. During the hour it takes for the robot to walk smoothly, sensor data from the robot’s feet are continuously compared with the expected touch-down predicted by the robot’s CPG. If the robot stumbles, the learning algorithm changes how far the legs swing back and forth, how fast the legs swing, and how long a leg is on the ground. The adjusted motion also affects how well the robot can utilize its compliant leg mechanics. During the learning process, the CPG sends adapted motor signals so that the robot henceforth stumbles less and optimizes its walking. In this framework, the virtual spinal cord has no explicit knowledge about the robot’s leg design, its motors and springs. Knowing nothing about the physics of the machine, it lacks a robot “model.”

    Robot that teaches dog how to walk in an hour.

    “Our robot is practically ‘born’ knowing nothing about its leg anatomy or how they work,” Ruppert explains. “The CPG resembles a built-in automatic walking intelligence that nature provides and that we have transferred to the robot. The computer produces signals that control the legs’ motors, and the robot initially walks and stumbles. Data flows back from the sensors to the virtual spinal cord where sensor and CPG data are compared. If the sensor data does not match the expected data, the learning algorithm changes the walking behavior until the robot walks well, and without stumbling. Changing the CPG output while keeping reflexes active and monitoring the robot stumbling is a core part of the learning process.”

    Power-saving robot dog control

    Only five watts are used by Morti’s computer while it is moving. Industrial quadruped robots from well-known manufacturers are substantially more power-hungry since they have become adept at moving with the aid of sophisticated controllers. Using a model of the robot, their controls are programmed with information of the precise mass and body geometry. They typically consume a few tens of watts to several hundred watts. Both robot kinds function dynamically and effectively, but the Stuttgart model uses far less computational power. Additionally, it offers crucial insights on animal anatomy.

    “A living animal’s spinal cord is difficult to study. However, we can simulate one in the robot “explains Alexander Badri-Spröwitz, who leads the Dynamic Locomotion Research Group and co-authored the article with Ruppert. “These CPGs are recognized in a wide variety of mammals. We are aware that reflexes are ingrained, but how can we combine the two to enable animals to learn actions through both CPGs and reflexes? This is fundamental investigation into the interface between biology and robotics. The robotic paradigm provides us with solutions to issues that biology alone is unable to address.”

    Read More

  • Arduino Classroom Attendance Counter with ESP32 Cam

    Arduino Classroom Attendance Counter with ESP32 Cam

    In this tutorial, we will be going through how to design and construct an Arduino classroom attendance counter with an ESP32 Cam and Arduino IDE. The project design would use the ESP32 Cam development board to stream real-time video surveillance of a classroom. Also record the classroom attendance by counting the number of students inside the class through the entrance door and the number of students who have left the classroom through the exit door. This counting is very possible using infrared (IR) proximity sensors that is placed at the two doors of the project design. In summary, we will be achieving the following objectives:

    • Using Infrared proximity sensors placed at the doors to check for entry attendance and exit attendance of “model” students. The exit attendance is subtracted from the entry attendance and this was termed as the total count or head count in the classroom. This was displayed on a smart LCD screen at the front view of the model classroom.
    • The system design checked for two importance cases; namely when the total count was equal to zero and when it was above zero. During the latter scenario, the design would trigger on an actuator which was a bright light onboard the ESP32 Cam to brighten up the model classroom. During the former, the project would turn off the bight LED light since there was no model student in the model classroom anymore.
    • The project design allowed one user to stream seamlessly in real time the surveillance video of the vicinity of the model classroom. This was achieved by some HTML (hypertext markup language), JavaScript and CSS (cascading style sheet) that was run on the SoC (system on Chip) memory of the ESP32 Dev board. This provide an easy to use UI (user interface) that was accessed by logging the IP address of the A.P network the user was already connected to.
    • The UI has many functionalities that allowed the use of different view point angles, contrast and light features. It also provided  buttons to take pictures, stream and stop video streaming etc.
    IoT classroom attendance
    The project design

    Materials for this Project Design

    • ESP32 Cam Development Board…1 Pieces
    • 0.4A 5V Hi-link Power Supply…1 pieces
    • Infrared (IR) Promixity sensor..2 pieces
    • 1602 LCD module
    • I2C LCD module
    • Veroboard
    • Male and Female header pin
    IoT classroom attendance - LCD module
    16×2 LCD module

    The LCD module is a Hitachi 16×2 liquid crystal display. This means it can display 16 characters on the vertical orientation and 2 rows of these vertical characters. The LCD screen type was picked to be blue color. We used this to know what is going on with the Arduino board. On startup, the screen would display the project title and show position of the action buttons.

    Technical Specifications

    • 16 character x 2 line                                                                           Blue LCD
    • 4-bit and 8-bit                                                                                    parallel interface
    • DC Power Input                                                                                  5V nominal  (5.5V max)
    • Operating Current (Total)                                                                   30mA (typical)
    • Operating Current (Backlight Only)                                                   20mA (typical)

    The Power Supply

    5V power supply circuit diagram
    5V power supply circuit diagram

    The circuit diagram shows an output of 5V DC at 3A current rating. A power diode is put in series to its DC output to stop feedback voltage from the connected load. The MOSFET QA is used to switch the KA3842 depending on the amount of current the load needs at 12V.

    Unlike the traditional linear power supply, the power supply was able to maintain stable 5V at 3A current supply when the AC input supply suddenly goes high above the rated 220V AC (transient). This was the same result when there is a voltage drop in the AC to about 100V AC, the MOSFET was driven to increase the frequency across the fly-back converter and this increased the wave form and hence there was stable supply of 5V output.

    5V 2A power supply
    5V 2A power supply

    The Schematic Diagram of IoT Classroom Attendance Surveillance System

    IoT Classroom Attendance Surveillance
    IoT Classroom Attendance Surveillance circuit diagram

    Circuit Diagram Explanation

    The project design used ESP32 Cam microcontroller in accomplishing its sets objective of Local Area Network (LAN) surveillance and total digital counting of attendance. As shown in the breadboard view of the schematic diagram above; The system used a power jack to accept 5V DC supply from the external power supply adapter.

    The project design has a microcontroller esp32 development board running the function of taking “still” pictures of about 1000 times in one second and streaming this on a webserver over LAN. This would form a video surveillance for streaming. This also allowed the user to count The IR signals detect at each door.

    Programming the LCD Module

    Connection of the LCD module to ESP32 Cam
    Connection of the LCD module using I2C Communication

    The LCD module is connected using the 2-bit or 2 wire data communication protocol.  This means that we connected on 2 wires the SDA (serial data) and SCL (serial clock) to the ESP32 Cam board. Also, 10kΩ potentiometer output pin on board the I2C module was connected to the A0 of the LCD to adjust its contrast level. While its Vcc and Gnd pins are connected to 5V respectively.

    Program Code for LCD

    The program code for Arduino classroom counter project shown in the code snippet below was used to display a welcome message and also further display other commands and events that took place in the brain of the project the ESP32 Cam. The program code was in C++ language and was coded and complied in the Arduino IDE (integrated development environment). The library used was the Inter-integrated Circuit (I2C) module library that allowed us to use only 2 wires for communication access to the LCD inside of 4 wires or 8 wires

    The Arduino snapshot for the LCD
    The Arduino snapshot for the LCD
    Arduino classroom counter; LCD display welcome message
    Classroom attendance surveillance LCD display welcome message

    Programming the Infrared (IR) Proximity Sensors

    Arduino classroom counter: Arduino sketch for the IR sensors
    Arduino sketch for the IR sensors

    The code snippet in fig 4.5 began with calling the I2C library in code line 1. The type of LCD module used was outline in code line 2 as well as the LCD’s Hex code. The first program function setup() had the start LCD I2C module start up using code line 7 and the LCD backlight was turned on in code line 8. Where we wanted the LCD to start printing the string characters was initiated in code line 8 using syntax lcd.setCursor(0,0).  This means that the string character could begin in row 1 and column 1. Since computer starts counting from zero. The welcome message was printed after this. In the loop() function, the IR modules were read from their data-out pins declared in code line 5 and 6 respectively. And the signals were and saved in the variables declared in 9 through 10. The count calculations was best put in the loop() function because the function would repeatedly executes the codes inside it.

    smart classroom counter

    Code line 25 through 49 used if statement logic calculations to check the state of the IR proximity sensor modules and  and count in the increment direction if the total number of persons through the entry door surpassed that of the number of of persons through the exit door. The if statement  also check for when the “count” is above zero (0) so that it can turn on the LED bright light. On the other hand, another if else state check when exactly the “count” is zero (0) so that it can turn off the same LED bright light. All these are displayed on the LCD screen using code line 18 through 23.

    Arduino Classroom Counter: Arduino Sketch

    #include "esp_camera.h"
    #include <WiFi.h>
    #include <Wire.h>
    #include <LiquidCrystal_I2C.h>
    
    #define CAMERA_MODEL_AI_THINKER
    
    #include "camera_pins.h"
    
    LiquidCrystal_I2C lcd(0x27, 16, 2);
    const char* ssid = "Ekpenyong-CAM";
    const char* password = "1234567890";
    const int irPin1 = 2;
    const int irPin2 = 13;
    const int flash = 4;
    int count = 0;
    int state = LOW;
    void startCameraServer();
    bool entry_state = 1;
    bool exit_state = 1;
    bool last_entry_state = 1; 
    bool last_exit_state = 1;
    
    void setup() {
    pinMode(irPin1, INPUT_PULLUP);
    pinMode(irPin2, INPUT_PULLUP);
    pinMode(flash, OUTPUT);
    digitalWrite(flash, 0);
      Serial.begin(115200);
      Serial.setDebugOutput(true);
      Serial.println();
      camera_config_t config;
      config.ledc_channel = LEDC_CHANNEL_0;
      config.ledc_timer = LEDC_TIMER_0;
      config.pin_d0 = Y2_GPIO_NUM;
      config.pin_d1 = Y3_GPIO_NUM;
      config.pin_d2 = Y4_GPIO_NUM;
      config.pin_d3 = Y5_GPIO_NUM;
      config.pin_d4 = Y6_GPIO_NUM;
      config.pin_d5 = Y7_GPIO_NUM;
      config.pin_d6 = Y8_GPIO_NUM;
      config.pin_d7 = Y9_GPIO_NUM;
      config.pin_xclk = XCLK_GPIO_NUM;
      config.pin_pclk = PCLK_GPIO_NUM;
      config.pin_vsync = VSYNC_GPIO_NUM;
      config.pin_href = HREF_GPIO_NUM;
      config.pin_sscb_sda = SIOD_GPIO_NUM;
      config.pin_sscb_scl = SIOC_GPIO_NUM;
      config.pin_pwdn = PWDN_GPIO_NUM;
      config.pin_reset = RESET_GPIO_NUM;
      config.xclk_freq_hz = 10000000;
      config.frame_size = FRAMESIZE_UXGA;
      config.pixel_format = PIXFORMAT_JPEG; // for streaming
      //config.pixel_format = PIXFORMAT_RGB565; // for face detection/recognition
      config.grab_mode = CAMERA_GRAB_WHEN_EMPTY;
      config.fb_location = CAMERA_FB_IN_PSRAM;
      config.jpeg_quality = 10;
      config.fb_count = 1;
      
      // if PSRAM IC present, init with UXGA resolution and higher JPEG quality
      //                      for larger pre-allocated frame buffer.
      if(config.pixel_format == PIXFORMAT_JPEG){
        if(psramFound()){
          config.jpeg_quality = 10;
          config.fb_count = 2;
          config.grab_mode = CAMERA_GRAB_LATEST;
        } else {
          // Limit the frame size when PSRAM is not available
          config.frame_size = FRAMESIZE_SVGA;
          config.fb_location = CAMERA_FB_IN_DRAM;
        }
      } else {
        // Best option for face detection/recognition
        config.frame_size = FRAMESIZE_240X240;
    #if CONFIG_IDF_TARGET_ESP32S3
        config.fb_count = 2;
    #endif
      }
      // camera init
      esp_err_t err = esp_camera_init(&config);
      if (err != ESP_OK) {
        Serial.printf("Camera init failed with error 0x%x", err);
        return;
      }
    
      sensor_t * s = esp_camera_sensor_get();
      // initial sensors are flipped vertically and colors are a bit saturated
      if (s->id.PID == OV3660_PID) {
        s->set_vflip(s, 1); // flip it back
        s->set_brightness(s, 1); // up the brightness just a bit
        s->set_saturation(s, -2); // lower the saturation
      }
      // drop down frame size for higher initial frame rate
      if(config.pixel_format == PIXFORMAT_JPEG){
        s->set_framesize(s, FRAMESIZE_QVGA);
      }
    
    #if defined(CAMERA_MODEL_M5STACK_WIDE) || defined(CAMERA_MODEL_M5STACK_ESP32CAM)
      s->set_vflip(s, 1);
      s->set_hmirror(s, 1);
    #endif
    
    #if defined(CAMERA_MODEL_ESP32S3_EYE)
      s->set_vflip(s, 1);
    #endif
    
      lcd.init();  // sda=0, scl=2 
      lcd.backlight(); 
      lcd.setCursor(0, 0);
      lcd.print("    Welcome:  ");
      delay(500);
      lcd.setCursor(0, 1);
      lcd.print("Miss Ekpenyong");
      delay(3000);  
      WiFi.softAP(ssid, password);
      WiFi.setSleep(false);
      IPAddress IP = WiFi.softAPIP();
      String myIP = IP.toString();
      Serial.print("AP IP address: ");
      Serial.println(myIP);
    
      startCameraServer();
    
      Serial.print("Camera Ready! Use 'http://"+myIP);
      Serial.println("' to connect");
      lcd.setCursor(0, 0);
      lcd.print(" Camera Ready!  ");
      delay(500);
      lcd.setCursor(0, 1);
      lcd.print("goto:"+myIP);
      digitalWrite(flash, 1);
      delay(500);
      digitalWrite(flash, 0);
      delay(500);
      digitalWrite(flash, 1);
      delay(500);
      digitalWrite(flash, 0);
      delay(500);
      digitalWrite(flash, 1);
      delay(3500);
      digitalWrite(flash, 0);
      delay(500);
    }
    
    void loop() {
      // put your main code here, to run repeatedly:
      lcd.setCursor(0, 1);
      lcd.print("Total Count: ");
      lcd.print(count);
      lcd.print("  ");
      lcd.setCursor(0, 0);
      lcd.print("  Smart Counter ");
      entry_state = digitalRead(irPin1);
      if (entry_state != last_entry_state) {
        // if the state has changed, increment the counter
        if (entry_state == state) {
          // if the current state is LOW
          count++;
        }
        // Delay a little bit to avoid bouncing
        delay(30);
      }
      
      exit_state = digitalRead(irPin2);   
       // compare the buttonState to its previous state
      if (exit_state != last_exit_state) {
        // if the state has changed, increment the counter
        if (exit_state == state) {
          // if the current state is LOW
          count--;
          if(count < 0){count = 0;}
        }
        // Delay a little bit to avoid bouncing
        delay(30);
      }
      // save the current state as the last state, for next time through the loop
      last_entry_state = entry_state;
      last_exit_state = exit_state;
      //digitalWrite(lamp, !count);
      digitalWrite(flash, count);
     Serial.print("population :");
     Serial.println(count);
    }
    
    
    Arduino classroom counter: real time surveillance video streaming
    The real time surveillance video streaming

    Conclusion

    The project, Arduino classroom counter design has been designed, programmed, assembled and constructed. It has achieved the aims and objectives within its scope of design. It has been able to do the above mentioned objectives successfully. Let us know what you think about this project design in the comment section.

    Read More

  • IoT Classroom Attendance Surveillance System with ESP32 Cam Arduino

    IoT Classroom Attendance Surveillance System with ESP32 Cam Arduino

    In this tutorial, we will be going through how to design and construct an IoT classroom attendance surveillance system with an ESP32 Cam and Arduino IDE. The project design would use the ESP32 Cam development board to stream real-time video surveillance of a classroom. Also record the classroom attendance by counting the number of students inside the class through the entrance door and the number of students who have left the classroom through the exit door. This counting is very possible using infrared (IR) proximity sensors that is placed at the two doors of the project design. In summary, we will be achieving the following objectives:

    • Using Infrared proximity sensors placed at the doors to check for entry attendance and exit attendance of “model” students. The exit attendance is subtracted from the entry attendance and this was termed as the total count or head count in the classroom. This was displayed on a smart LCD screen at the front view of the model classroom.
    • The system design checked for two importance cases; namely when the total count was equal to zero and when it was above zero. During the latter scenario, the design would trigger on an actuator which was a bright light onboard the ESP32 Cam to brighten up the model classroom. During the former, the project would turn off the bight LED light since there was no model student in the model classroom anymore.
    • The project design allowed one user to stream seamlessly in real time the surveillance video of the vicinity of the model classroom. This was achieved by some HTML (hypertext markup language), JavaScript and CSS (cascading style sheet) that was run on the SoC (system on Chip) memory of the ESP32 Dev board. This provide an easy to use UI (user interface) that was accessed by logging the IP address of the A.P network the user was already connected to.
    • The UI has many functionalities that allowed the use of different view point angles, contrast and light features. It also provided  buttons to take pictures, stream and stop video streaming etc.
    IoT classroom attendance
    The project design

    Materials for this Project Design

    • ESP32 Cam Development Board…1 Pieces
    • 0.4A 5V Hi-link Power Supply…1 pieces
    • Infrared (IR) Promixity sensor..2 pieces
    • 1602 LCD module
    • I2C LCD module
    • Veroboard
    • Male and Female header pin
    IoT classroom attendance - LCD module
    16×2 LCD module

    The LCD module is a Hitachi 16×2 liquid crystal display. This means it can display 16 characters on the vertical orientation and 2 rows of these vertical characters. The LCD screen type was picked to be blue color. We used this to know what is going on with the Arduino board. On startup, the screen would display the project title and show position of the action buttons.

    Technical Specifications

    • 16 character x 2 line                                                                           Blue LCD
    • 4-bit and 8-bit                                                                                    parallel interface
    • DC Power Input                                                                                  5V nominal  (5.5V max)
    • Operating Current (Total)                                                                   30mA (typical)
    • Operating Current (Backlight Only)                                                   20mA (typical)

    The Power Supply

    5V power supply circuit diagram
    5V power supply circuit diagram

    The circuit diagram shows an output of 5V DC at 3A current rating. A power diode is put in series to its DC output to stop feedback voltage from the connected load. The MOSFET QA is used to switch the KA3842 depending on the amount of current the load needs at 12V.

    Unlike the traditional linear power supply, the power supply was able to maintain stable 5V at 3A current supply when the AC input supply suddenly goes high above the rated 220V AC (transient). This was the same result when there is a voltage drop in the AC to about 100V AC, the MOSFET was driven to increase the frequency across the fly-back converter and this increased the wave form and hence there was stable supply of 5V output.

    5V 2A power supply
    5V 2A power supply

    The Schematic Diagram of IoT Classroom Attendance Surveillance System

    IoT Classroom Attendance Surveillance
    IoT Classroom Attendance Surveillance circuit diagram

    Circuit Diagram Explanation

    The project design used ESP32 Cam microcontroller in accomplishing its sets objective of Local Area Network (LAN) surveillance and total digital counting of attendance. As shown in the breadboard view of the schematic diagram above; The system used a power jack to accept 5V DC supply from the external power supply adapter.

    The project design has a microcontroller esp32 development board running the function of taking “still” pictures of about 1000 times in one second and streaming this on a webserver over LAN. This would form a video surveillance for streaming. This also allowed the user to count The IR signals detect at each door.

    Programming the LCD Module

    Connection of the LCD module to ESP32 Cam
    Connection of the LCD module using I2C Communication

    The LCD module is connected using the 2-bit or 2 wire data communication protocol.  This means that we connected on 2 wires the SDA (serial data) and SCL (serial clock) to the ESP32 Cam board. Also, 10kΩ potentiometer output pin on board the I2C module was connected to the A0 of the LCD to adjust its contrast level. While its Vcc and Gnd pins are connected to 5V respectively.

    Program Code for LCD

    The program code shown in the code snippet below was used to display a welcome message and also further display other commands and events that took place in the brain of the project the ESP32 Cam. The program code was in C++ language and was coded and complied in the Arduino IDE (integrated development environment). The library used was the Inter-integrated Circuit (I2C) module library that allowed us to use only 2 wires for communication access to the LCD inside of 4 wires or 8 wires

    The Arduino snapshot for the LCD
    The Arduino snapshot for the LCD
    Classroom attendance surveillance LCD display welcome message
    Classroom attendance surveillance LCD display welcome message

    Programming the Infrared (IR) Proximity Sensors

    Classroom attendance surveillance:Arduino sketch for the IR sensors
    Arduino sketch for the IR sensors

    The code snippet in fig 4.5 began with calling the I2C library in code line 1. The type of LCD module used was outline in code line 2 as well as the LCD’s Hex code. The first program function setup() had the start LCD I2C module start up using code line 7 and the LCD backlight was turned on in code line 8. Where we wanted the LCD to start printing the string characters was initiated in code line 8 using syntax lcd.setCursor(0,0).  This means that the string character could begin in row 1 and column 1. Since computer starts counting from zero. The welcome message was printed after this. In the loop() function, the IR modules were read from their data-out pins declared in code line 5 and 6 respectively. And the signals were and saved in the variables declared in 9 through 10. The count calculations was best put in the loop() function because the function would repeatedly executes the codes inside it.

    smart classroom counter

    Code line 25 through 49 used if statement logic calculations to check the state of the IR proximity sensor modules and  and count in the increment direction if the total number of persons through the entry door surpassed that of the number of of persons through the exit door. The if statement  also check for when the “count” is above zero (0) so that it can turn on the LED bright light. On the other hand, another if else state check when exactly the “count” is zero (0) so that it can turn off the same LED bright light. All these are displayed on the LCD screen using code line 18 through 23.

    Classroom Attendance Surveillance: Arduino Sketch

    #include "esp_camera.h"
    #include <WiFi.h>
    #include <Wire.h>
    #include <LiquidCrystal_I2C.h>
    
    #define CAMERA_MODEL_AI_THINKER
    
    #include "camera_pins.h"
    
    LiquidCrystal_I2C lcd(0x27, 16, 2);
    const char* ssid = "Ekpenyong-CAM";
    const char* password = "1234567890";
    const int irPin1 = 2;
    const int irPin2 = 13;
    const int flash = 4;
    int count = 0;
    int state = LOW;
    void startCameraServer();
    bool entry_state = 1;
    bool exit_state = 1;
    bool last_entry_state = 1; 
    bool last_exit_state = 1;
    
    void setup() {
    pinMode(irPin1, INPUT_PULLUP);
    pinMode(irPin2, INPUT_PULLUP);
    pinMode(flash, OUTPUT);
    digitalWrite(flash, 0);
      Serial.begin(115200);
      Serial.setDebugOutput(true);
      Serial.println();
      camera_config_t config;
      config.ledc_channel = LEDC_CHANNEL_0;
      config.ledc_timer = LEDC_TIMER_0;
      config.pin_d0 = Y2_GPIO_NUM;
      config.pin_d1 = Y3_GPIO_NUM;
      config.pin_d2 = Y4_GPIO_NUM;
      config.pin_d3 = Y5_GPIO_NUM;
      config.pin_d4 = Y6_GPIO_NUM;
      config.pin_d5 = Y7_GPIO_NUM;
      config.pin_d6 = Y8_GPIO_NUM;
      config.pin_d7 = Y9_GPIO_NUM;
      config.pin_xclk = XCLK_GPIO_NUM;
      config.pin_pclk = PCLK_GPIO_NUM;
      config.pin_vsync = VSYNC_GPIO_NUM;
      config.pin_href = HREF_GPIO_NUM;
      config.pin_sscb_sda = SIOD_GPIO_NUM;
      config.pin_sscb_scl = SIOC_GPIO_NUM;
      config.pin_pwdn = PWDN_GPIO_NUM;
      config.pin_reset = RESET_GPIO_NUM;
      config.xclk_freq_hz = 10000000;
      config.frame_size = FRAMESIZE_UXGA;
      config.pixel_format = PIXFORMAT_JPEG; // for streaming
      //config.pixel_format = PIXFORMAT_RGB565; // for face detection/recognition
      config.grab_mode = CAMERA_GRAB_WHEN_EMPTY;
      config.fb_location = CAMERA_FB_IN_PSRAM;
      config.jpeg_quality = 10;
      config.fb_count = 1;
      
      // if PSRAM IC present, init with UXGA resolution and higher JPEG quality
      //                      for larger pre-allocated frame buffer.
      if(config.pixel_format == PIXFORMAT_JPEG){
        if(psramFound()){
          config.jpeg_quality = 10;
          config.fb_count = 2;
          config.grab_mode = CAMERA_GRAB_LATEST;
        } else {
          // Limit the frame size when PSRAM is not available
          config.frame_size = FRAMESIZE_SVGA;
          config.fb_location = CAMERA_FB_IN_DRAM;
        }
      } else {
        // Best option for face detection/recognition
        config.frame_size = FRAMESIZE_240X240;
    #if CONFIG_IDF_TARGET_ESP32S3
        config.fb_count = 2;
    #endif
      }
      // camera init
      esp_err_t err = esp_camera_init(&config);
      if (err != ESP_OK) {
        Serial.printf("Camera init failed with error 0x%x", err);
        return;
      }
    
      sensor_t * s = esp_camera_sensor_get();
      // initial sensors are flipped vertically and colors are a bit saturated
      if (s->id.PID == OV3660_PID) {
        s->set_vflip(s, 1); // flip it back
        s->set_brightness(s, 1); // up the brightness just a bit
        s->set_saturation(s, -2); // lower the saturation
      }
      // drop down frame size for higher initial frame rate
      if(config.pixel_format == PIXFORMAT_JPEG){
        s->set_framesize(s, FRAMESIZE_QVGA);
      }
    
    #if defined(CAMERA_MODEL_M5STACK_WIDE) || defined(CAMERA_MODEL_M5STACK_ESP32CAM)
      s->set_vflip(s, 1);
      s->set_hmirror(s, 1);
    #endif
    
    #if defined(CAMERA_MODEL_ESP32S3_EYE)
      s->set_vflip(s, 1);
    #endif
    
      lcd.init();  // sda=0, scl=2 
      lcd.backlight(); 
      lcd.setCursor(0, 0);
      lcd.print("    Welcome:  ");
      delay(500);
      lcd.setCursor(0, 1);
      lcd.print("Miss Ekpenyong");
      delay(3000);  
      WiFi.softAP(ssid, password);
      WiFi.setSleep(false);
      IPAddress IP = WiFi.softAPIP();
      String myIP = IP.toString();
      Serial.print("AP IP address: ");
      Serial.println(myIP);
    
      startCameraServer();
    
      Serial.print("Camera Ready! Use 'http://"+myIP);
      Serial.println("' to connect");
      lcd.setCursor(0, 0);
      lcd.print(" Camera Ready!  ");
      delay(500);
      lcd.setCursor(0, 1);
      lcd.print("goto:"+myIP);
      digitalWrite(flash, 1);
      delay(500);
      digitalWrite(flash, 0);
      delay(500);
      digitalWrite(flash, 1);
      delay(500);
      digitalWrite(flash, 0);
      delay(500);
      digitalWrite(flash, 1);
      delay(3500);
      digitalWrite(flash, 0);
      delay(500);
    }
    
    void loop() {
      // put your main code here, to run repeatedly:
      lcd.setCursor(0, 1);
      lcd.print("Total Count: ");
      lcd.print(count);
      lcd.print("  ");
      lcd.setCursor(0, 0);
      lcd.print("  Smart Counter ");
      entry_state = digitalRead(irPin1);
      if (entry_state != last_entry_state) {
        // if the state has changed, increment the counter
        if (entry_state == state) {
          // if the current state is LOW
          count++;
        }
        // Delay a little bit to avoid bouncing
        delay(30);
      }
      
      exit_state = digitalRead(irPin2);   
       // compare the buttonState to its previous state
      if (exit_state != last_exit_state) {
        // if the state has changed, increment the counter
        if (exit_state == state) {
          // if the current state is LOW
          count--;
          if(count < 0){count = 0;}
        }
        // Delay a little bit to avoid bouncing
        delay(30);
      }
      // save the current state as the last state, for next time through the loop
      last_entry_state = entry_state;
      last_exit_state = exit_state;
      //digitalWrite(lamp, !count);
      digitalWrite(flash, count);
     Serial.print("population :");
     Serial.println(count);
    }
    
    
    real time surveillance video streaming
    The real time surveillance video streaming

    Conclusion

    The project design has been designed, programmed, assembled and constructed. It has achieved the aims and objectives within its scope of design. It has been able to do the above mentioned objectives successfully. Let us know what you think about this project design in the comment section.

    Read More

  • How to Design Solar Based Inverter – 0.5KVA Inverter Capacity

    How to Design Solar Based Inverter – 0.5KVA Inverter Capacity

    This final year project, a 0.5KVA solar based inverter design, was carried out by Ifeanyichukwu Opara, a student of Covenant University Ottah, from the department of Electrical Engineering. This is a joint collaboration between him and Smartech to design a 0.5KVA Solar Based.

    0.5KVA solar based inverter design
    0.5KVA solar based inverter

    This project design is a pure sine wave solar based inverter that uses a 100W panel to recharge a 12V Battery through a PWM charge controller as shown here. The charge controller would display that the battery is connected. The battery voltage too is displayed.

    The PWM Solar charge controller
    The PWM Solar charge controller

    Materials and Components Needed for this Project

    • Print Circuit Board (PCB) of the inverter
    • 12V relay…2 pieces
    • N-Channel MOSFETs….8 pieces
    • 100k Potentionmeter…2 pieces

    CONTACT US HERE FOR FULL KIT OF THIS PROJECT

    The Inverter Calculations

    Determination of the Number of MOSFETs Required

    Since the input voltage is taken from the battery which supplies voltage that could range from 12v to 48v to the input side of the transformer, then; the least voltage level was selected for the analysis to enable calculate using maximum current possible.

    Input voltage = 12V
    MOSFET Type: IRF250N; Id = 50A, Vds = 200V
    Required output power = 1500VA

    The maximum drain current of the MOSFET is 50A at 100°C but it is difficult to keep the MOSFET at this temperature during high power operation, hence the need to de-rate. Choosing the maximum drain current for each MOSFET during maximum power operation to be 30A; Maximum drain current for each MOSFET — 30A. The required current from the input side of the transformer for the power output to be at 1500 VA was calculated using:

    Current = power/voltage
    Current = 1500/12  = 125A
    Number of MOSFET = Maximum current / MOSFET drain current
    =125/30
    =4.166 = 4 MOSFETs per branch

    A push-pull circuit has 2 branches, therefore: total number of MOSFET= 2×4 = 8 MOSFETs.

    Heat Sink Selection

    Aluminum heat sinks used for the project design
    Aluminum heat sinks used for the project design

    The use of heat sink in this 0.5KVA solar based inverter project design was introduced in order to keep the temperature of the semiconductor below 125 C. When power MOSFETs are delivering very high power due to the connected output, they operate at a very high temperature (maximum temperature is 150C). There arises a need to keep the temperature below the maximum operating temperature. Hence, the need for a material capable of being called a heat sink, which possesses a thermal conductivity to keep the temperature at a bearable level for the components. A heat sink is a component or assembly that transfers heat generated within a solid material to fluid medium, such as air or liquid. Examples of heat sinks are heat exchangers used in refrigeration and air conditioning systems. The most common heat sink material is Aluminium. Chemically pure Aluminium is not used in the construction of heat sink, but rather Aluminium alloy. This has a very high thermal conductivity, soft to work on and light in weight. Also, copper can be used for this purpose since it has around twice the conductivity of Aluminium, but heavier and more expensive than Aluminium.

    Transformer Selection

    inverter transformer selection
    inverter transformer selection

    The design inputs of the transformer at the start of designing are listed below:

    • Secondary Voltage = 230 Volts,
    • Secondary Voltage = 7 Amps
    • Primary Current (Output Current) = 50 Amps.
    • Primary Voltage (Output Voltage) = 10-0-10 volts
    • Output Frequency = 50 Hz

    Calculating Inverter Transformer Voltage, Current, Number of Turns

    Calculating Turns per Volt (TPV) = 1/ (4.44  x 10-4 frequency x core area x flux density)
    TPV = 1 / (4.44 × 10–4 ×18 × 1.3 × 50) = 1.96 turn per volt.
    Therefore the Number of Turns for the Secondary winding is calculated as = 1.96 × 230 = 450
    Secondary Winding Area becomes = 450 / 137 = 3.27 sq.cm.
    Calculating Primary Number of Turns = 1.04 (1.96 × 24) = 49. The value 1.04 is included to ensure that a few extra turns are added to the total, to compensate for the winding losses.
    The reason for using 10V-0-10V as secondary, is enable maintain 230V output when the battery level reduce to 10v during the inverting process.
    For 10V = 10 x 1.5 = 15 turns.

    The transformer winding wire sizes are selected from the standard wire Guage selection table.

    Solar Charge Controller Sizing

    The solar charge controller is typically rated against Amperage and Voltage capacities. Select the solar charge controller to match the voltage of PV array and batteries and then identify which type of solar charge controller is right for your application. Make sure that solar charge controller has enough capacity to handle the current from PV array.

    charge controller
    charge controller

    For the series charge controller type, the sizing of controller depends on the total PV input current which is delivered to the controller and also depends on PV panel configuration (series or parallel configuration). According to standard practice, the sizing of solar charge controller is to take the short circuit current (Isc) of the PV array, and multiply it by 1.3.

    The block diagram below shows various parts of the project that will be addressed. The signal generator is simply the SG3524 PWM IC. It generates both the PWM and square wave signals needed in controlling the MOSFET drivers. The signals from the drivers are then used to drive the four N-channel MOSFETs in the Push-Pull configuration. The output signal from the Push-Pull is then sent through a step-up transformer and a low-pass LC filter so that the final output is a pure sine wave at 50Hz frequency.

    block diagram for the solar based inverter

    The 0.5VA Solar Based Inverter Circuit Diagram

    Solar based inverter circuit diagram
    Download Full Circuit Diagram Here

    PCB and Circuit Assembly

    solar based inverter PCB
    The Inverter PCB

    The 0.5kVA solar powered inverter circuit diagram is manufactured on a PCB. Once the PCB is out of production as shown above, the assembly of the components begin.

    The assembly of the components on the PCB

    Read More

    Assembly of the components started like this, we placed all the needed components on the PCB and soldered them onto the PCB. These relays here are used to switch between inverted AC voltage output and AC mains output.

    Testing the Assembly

    heat sinks to the MOSFET
    heat sinks to the MOSFETs

    The heatsinks are important and had to be connected because without them, the heat dissipated by the N-Channel MOSFETs would eventually damage the MOSFETs themselves. Also, it is a source to drain current. When the heatsinks are connected, we can quickly run a test to see if things are going in the right direction. All connections are terminated accordingly and a miniature 12V DC battery is used for this test.

    First test of the inverter design
    First test of the inverter design

    Please remember to wear an insulation glove while dealing with this design at this stage. connecting the control part of the inverter circuit to the battery. We can see that the AC light bulb comes on.

    Calibrating of the Solar Based Inverter Design

    The high voltage needs to be calibrated
    The high voltage needs to be calibrated

    The amplitude of the voltage is also quite high hence the light intensity of the AC light bulb is bright. There is the need to calibrate the inverter from 330V to 220-250V range. This is done by adjusting the potentiometers on the inverter board. The voltmeter reads the AC voltage of the inverter output when it is turned on. We can see it go from 0V to 235V AC. This is a good output AC voltage.

    Calibrating the inverter
    Calibrating the inverter to optimum voltage

    Casing the Solar Based Inverter Design

    We start encasing the design in a plastic casing. This plastic box was spacious enough to contain the design and also has opening and ports for AC and DC output. The system design can power both AC and DC loads.

    encasing the project design
    encasing the project design

    Conclusion

    This project, design and construction of 0.5KVA solar based inverter has been carried out successfully. It has been tested and found to be working. You can follow the steps here, order for the complete kits which includes the PCB design and the components to get you started on the project work. Let us know what you think about this project in the comment section below. Thank you.

  • Fighting climate change requires reducing steel corrosion, according to a study.

    Fighting climate change requires reducing steel corrosion, according to a study.

    Fighting climate
    Fighting climate

    The US spends around a trillion dollars annually trying to prevent metallic corrosion, an electrochemical reaction that happens when metals oxidize and start to rust. Researchers have now calculated how much corrosion is steadily increasing global carbon emissions by tackling this unexpectedly pernicious problem.

    Global steel production has been rising steadily for decades—and because steel has poor resistance to corrosion, part of that demand is to replace steel used in construction materials that have become corroded over time, in everything from bridges to automobiles. Reducing the amount of steel that needs to be replaced due to corrosion could have measurable effects on how much greenhouse gases are produced to make steel, said Gerald Frankel, co-author of the study and a professor in materials science and engineering at The Ohio State University,

    Though previous studies have estimated the current economic cost of corrosion to be about 3 to 4% of a nation’s gross domestic product, this new study, led by Ohio State alum Mariano Iannuzzi, is the first to quantify the environmental impact associated with steel corrosion.

    The study was recently published in npj Materials Degradation.

    “Given society’s reliance on coal fuel, iron and steel production is one of the largest greenhouse gases emitters of any industry,” said Frankel. “But most of the costs associated with the industry actually stem from the energy that goes into creating steel, and that energy is lost as the steel reverts to rust, which is similar to its original form of iron ore.”

    The time it takes steel to corrode largely depends on the severity of the environment and the alloy composition, but this environmentally expensive issue is only getting worse, said Frankel.

    Using historical carbon dioxide intensity data to estimate carbon dioxide levels per year beginning from 1960, the researchers found that in 2021, steel production accounted for 27% of the carbon emissions of the global manufacturing sector, and about 10.5% of the total global carbon emissions worldwide. Corroded steel replacement accounted for about 1.6 to 3.4% of emissions.

    Yet, as the report pointed out, there is some good news. Over the past 50 years, the energy consumption of the steelmaking process has decreased by 61% as a result of regulations imposed on the steel sector.

    Notwithstanding this progress, Frankel stated that the study’s findings should prompt worldwide governments and business leaders to modify and coordinate their strategies for managing corrosion and steel production.

    “Coordinated international initiatives, together with reducing global steel demand, might better improve global corrosion management techniques and substantially lower the surge in greenhouse gas emissions we’re seeing owing to continuously replacing damaged steel,” he said.

    If actions to improve steel’s carbon footprint aren’t taken soon, the study notes that greenhouse gas emissions produced by the steel industry could reach about 27.5% of the world’s total carbon emissions by 2030, with corroded steel representing about 4 to 9% of that number. Such a result would make the goals set by the Paris Agreement to limit Earth’s warming to 1.5 degrees Celsius as well as the U.S.’s own domestic climate goals almost completely unfeasible.

    The study notes that management strategies such as taking advantage of machine learning technologies could be one of the best chances we have to reduce Earth’s carbon dioxide levels.

    That said, if humans cannot meet these conditions, the consequences for Earth’s climate will be dire, so more people need to be made aware that a low-carbon steel industry is needed to prevent such a dystopia, said Frankel.

    According to Frankel, “Global warming is a societal concern that requires coordination of several multidisciplinary approaches.” In terms of the significance of contributing to the situation, “our effort is bringing to light an issue that seems to have gone under the radar.”

    Read More