robotics planet

all robotics in one place

All content on this page is provided by the aggregrated blogs listed on the right. Please follow the links to get there.

DIY Perimeter Wire Generator and Sensor

 − at 16:38, 11. Dec. 2017


Wire guidance technology is widely used in the industry, particularly, in warehouses where handling is automated. The robots follow a wire loop buried in the ground. An alternating current of relatively low intensity and frequency between 5Kz and 40KHz flows in this wire. The robot is equipped with inductive sensors, usually based on a tank circuit (with a resonance frequency equal or close to the frequency of the generated wave) that measures the intensity of the electromagnetic field close to the ground. A processing chain (amplification, filters, comparison) makes it possible to determine the position of the robot within to the wire.

These days, perimeter/boundary wire is also used to create “invisible fences” to keep pets within yards, and robot lawn mowers within zones. LEGO also uses the same principle to guide vehicles along roads without visitors seeing any lines. For example, here is a video of the Robomow RS630 in action :

This tutorial explains in an easy and intuitive way to help you understand the theory, design, and implementation to make your own generator and sensor for a perimeter wire. The files (Schematics, Eagle Files, Gerbers, 3D Files and Arduino Sample Code) are also available for download. This way, you can add the wire perimeter detection feature to your favorite robot and keep it within an operating “zone”. How cool is that!



The perimeter wire generator circuit will be based on the famous NE555 timer. NE555 or more commonly called 555 is an integrated circuit used for timer or multivibrator mode. This component is still used today because of its ease of use, low cost, and stability. One billion units are manufactured per year. For our generator, we will use the NE555 in Astable configuration. The stable configuration allows using the NE555 as an oscillator. Two resistors and a capacitor make it possible to modify the oscillation frequency as well as the duty cycle. The arrangement of the components is as shown in the schematic below.

The NE555 Generates a (rough) square wave which can run the length of the perimeter wire. Referring to the NE555 datasheet for the timer, there is a sample circuit, as well as the theory of operation (8.3.2 A-stable operation). Texas Instruments is not the only manufacturer of NE555 ICs, so should you choose another chip, be sure to check its manual.

We do offer this nice 555 Timer Soldering Kit that will give you the opportunity to solder all the internal components of a 555 timer in a through hole package to allow you to understand the operation of this circuit in detail.

Schematic and Prototyping

The schematic provided in the NE555 manual (8.3.2 A-stable operation section) is fairly complete. A few additional components were added and discussed below.


NE555 A-stable typical circuit

NE555 Circuit for A-stable Operation

The formula used to calculate the frequency of the output square wave is :

    f = 1.44 / ((Ra+2*Rb)*C)         (1) 

The frequency range of the generated square wave will be between 32Khz and 44KHz which is a specific frequency that shouldn’t interfere with other close devices. For this, we have chosen Ra = 3.3KOhms, Rb = 12KOhms + 4.7KOhms Potentiometer and C = 1.2nF.

The potentiometer will help us vary the frequency of the square wave output to match the resonance frequency of the LC Tank circuit that will be discussed later on. The theoretical lowest and highest value of the output frequency will be as follows calculated by the formula (1) :

Lowest frequency value : fL = 1.44 / ((3.3+2*(12+0))*1.2*10^(-9)) ≈ 32 698Hz

Highest frequency value : fH = 1.44 / ((3.3+2*(12+4.7))*1.2*10^(-9)) ≈ 43 956Hz

Since that the 4.7KOhms potentiometer never gets to 0 or 4.7, the output frequency range will vary from around 33.5Khz to 39Khz.

Here is the complete schematic of the generator circuit :


Eagle Generator Schematic

Eagle Generator Schematic

As you can see in the schematic, few additional components were added and will be discussed below. Here is the complete BOM :

  • R1 (Ra) : 3.3 KOhms
  • R2 (Rb1) : 12 KOhms
  • R3 (Current limiting resistor): 47 Ohms (needs to be fairly large to dissipate heat with a 2W power rating should be enough)
  • R4 (Rb2) : 4.7 KOhm potentiometer
  • C1 (C) : 1.2nF
  • C2 (0.01uF) : 0.01uF
  • C3 (Decoupling / Note A) : 100nF
  • C4 (Filtering) : 1uF
  • J1: 2.5mm center positive barrel connector (5-15V DC)
  • 12 : Screw terminal (two positions)
  • IC1: NE555 Precision Timer

Additional parts added to the schematic includes A barrel jack (J1) for easy connection to a wall adapter (12V) and a screw terminal (12) to conveniently connect to the perimeter wire.

Perimeter Wire: Note that the longer the perimeter wire, the more the signal degrades. We tested the setup with roughly 100′ of 22 gauge multi-strand wire (pegged into the ground as opposed to buried).

Power Supply: A 12V wall adapter is incredibly common, and any current rating above 500mA should work well. You can also choose a 12V lead acid or 11.1V LiPo to keep it within the case, but be sure to weatherproof it and turn it off when not in use.

Here some parts we offer that you might need when building the generator circuit :

Here is what the generator circuit should look like on a breadboard :

Sensor Breadboard Fritzing

Fritzing Generator Breadboard


As shown in the below oscilloscope screenshot of the output of the generator circuit (taken with the Micsig 200 MHz 1 GS/s 4 Channels Tablet Oscilloscope), we can see a (rough) square wave with a frequency of 36.41KHz and an amplitude of 11.8V (using a 12V power adapter). The frequency can be varied slightly by adjusting the R4 potentiometer.


Generator Square Wave Output

Generator Square Wave Output

A solderless breadboard is rarely ever a long-term solution and is best used to create a quick prototype. Therefore, after confirming that the generator circuit is working as it should, generating a square wave with a frequency range 33.5Khz and 40KHz (variable through the R4 pot), we have designed a PCB (24mmx34mm) only with PTH (Plated-through Hole) components to make it a nice small square wave generator board. Since through-hole components were used for prototyping with a breadboard, the PCB could also use through-hole components as well (instead of surface mount), and allows for easy soldering by hand. Placement of the components is not exact, and you can likely find room for improvement. We have made the Eagle and Gerber files available for download so that you can make your own PCB. Files can be found in the “Files” section at the end of this article.

Here is some tips when designing your own board :

  • Have the barrel connector and screw terminal on the same side of the board
  • Place the components relatively close to each other and minimize traces/lengths
  • Have the mounting holes be a standard diameter, and located in an easy to reproduce rectangle.
Generator PCB on Eagle

Generator Board Eagle

Generator Board 3D

Generator Board 3D

Generator Board

Generator Board


Wire Installation

So how to install the wire? Rather than burying it, it’s easiest to simply use pegs to keep it in place. You’re free to use whatever you want to keep the wire in place, but plastic works best. A pack of 50 pegs used for robot lawn mowers tends to be inexpensive.
When laying the wire, be sure to have both ends meet at the same location to connect to the generator board through the screw terminal.


Perimeter Wire Installation 1

Perimeter Wire Installation 1

Perimeter Wire Installation 2

Perimeter Wire Installation 2

Perimeter Wire Installation 3

Perimeter Wire Installation 3


Generator Setup

Generator Setup


Weather Resistance

Since the system will most likely be left outside to be used outdoors. The perimeter wire needs a weather resistant coating, and the generator circuit itself housed in a waterproof case. You can use this cool Enclosure to protect the generator from rain and these Waterproof DC Power Cable Set

Not all wire is created equal. If you plan to leave the wire out, be sure to invest in the correct wire, for example, this Robomow 300′ Perimeter Wire
Shielding which is not UV / water resistant will degrade quickly over time and become brittle.



Now that we have built the generator circuit and make sure that it is operating as it supposed, it is time to start thinking about how to detect the signal going through the wire. For this, we invite you to read about the LC Circuit, also called Tank Circuit or Tuned Circuit.

An LC circuit is an electrical circuit based on an Inductor/Coil (L) and a capacitor (C) connected in parallel. This circuit is used in filters, tuners, and frequency mixers. Consequently, it is commonly used in wireless broadcast transmissions for both broadcast and reception. We won’t go into the theoretical details regarding LC circuits, but the most important thing to keep in mind to understand the sensor circuit used in this article, would be the formula for calculating the resonance frequency of an LC circuit, which goes like :

       f0 = 1/(2*π*√(L*C))          (2) 

Where L is the inductance value of the coil in H (Henry) and C is the capacitance value of the capacitor in F (Farads).

For the sensor to detect the 34kHz-40Khz signal that runs into the wire, the tank circuit we used should have the resonance frequency in this range. We chose L = 1mH and C = 22nF to obtain a resonance frequency of 33932KHz calculated using the formula (2).

The amplitude of the signal detected by our tank circuit will be relatively small (a maximum of  80mV when we tested our sensor circuit) when the inductor is at about 10cm from the wire, therefore, it will need some amplification. To do so, we have used the popular LM324 Op-Amp amplifier to amplify the signal with a gain of 100 in a non-inverting configuration 2 stages amplification to make sure to obtain a nice readable analog signal at a greater distance than 10cm in the output of the sensor. This article provides useful information about Op-Amps in general. Also, you can have a look at the LM324’s datasheet.

Here is a typical circuit schematic of an LM324 amplifier :

LM324 Non-inverting

Op-Amp in non-inverting configuration

Using the equation for a non-inverting gain configuration, Av = 1+R2/R1. Setting the R1 to 10KOhms and R2 to 1MOhms will provide a gain of 100, which is within the desired specification.

In order for the robot to be able to detect the perimeter wire in different orientations, it is more appropriate to have more than one sensor installed on it. The more sensors on the robot, the better it will detect the boundary wire.

For this tutorial, and since the LM324 is a quad-op amplifier (this means that one LM324 chip has 4 separate amplifiers), we will be using two detecting sensors on the board. This means using two LC circuits and each will have 2 stages of amplification. Therefore, just one LM324 chip is needed.

Schematic and Prototyping

As we discussed above, the schematic for the sensor board is pretty straight-forward. It is composed of 2 LC circuits, one LM324 chip and a couple of 10KOhms and 1MOhms resistors to set the gains of the amplifiers.


Sensor Schematic Eagle

Eagle Sensor Schematic

Here is a list of the components that you can use :

  • R1, R3, R5, R7 : 10KOhm Resistors
  • R2, R4, R6, R8 : 1MOhm Resistors
  • C1, C2 : 22nF Capacitors
  • IC: LM324N amplifier
  • JP3 / JP4: 2.54mm 3-pin M/M headers
  • Inductors 1, 2 : 1mH*

* 1mH Inductors with a current rating of 420mA and a Q factor of 40 @ 252kHz should work well. We have added screw terminals as inductor leads to the schematic in order for the inductors ( with leads soldered to wires) to be placed at convenient locations on the robot. Then, the wires (of the inductors) will be connected to the screw terminals.

Out1 and Out2 pins could be directly connected to a microcontroller’s analog input pins. For example, you could use an Arduino UNO Board or, better, a BotBoarduino Controller for a more convenient connection as it has analog pins broken-out into a row of 3 pins (Signal, VCC, GND) and it is also Arduino compatible. The LM324 chip will be powered through the microcontroller’s 5V, therefore, the analog signal (detected wave) from the sensor board will vary between 0V and 5V depending on the distance between the inductor and the perimeter wire. The closer the inductor is to the perimeter wire, higher the amplitude of the sensor circuit output wave.

Here is what the sensor circuit should look like on a breadboard :


Sensor Breadboard Fritzing

Fritzing Sensor Breadboard


As we can see in the oscilloscope’s screenshots below, the detected wave at the output of the LC circuit is amplified and saturates at 5V when the inductor is at 15cm to the perimeter wire :


20-sensor output before amplification

Tank Circuit Output (Inductor @ 15cm of wire)

Sensor Circuit Output

Sensor Circuit Output After Amplification (Inductor @ 15cm of wire)


Same as we did with the generator circuit, we have designed a nice compact PCB with through-hole components for the sensor board with two tank circuits, an amplifier, and 2 analog outputs. Files can be found in the “Files” section at the end of this article.


Sensor PCB Eagle

Sensor Board Eagle

Sensor Board 3D

Sensor Board 3D

Sensor Board

Sensor Board


Obtaining an optimal detection of the perimeter wire with the inductors of the sensor circuit will depend on how the inductors are placed into the robot. If you use a through hole radial inductor like we did, the inductor’s axis should be perpendicular to the perimeter wire as below :


17-wire detection-1

Perimeter Wire Detection


Arduino Code

The Arduino code that you could use for your perimeter wire generator and the sensor is very simple. As the output of the sensor board is two analog signals varying from 0V to 5V (one for each sensor/inductor), the AnalogRead Arduino example can be used. Just connect the two output pins of the sensor board to two analog input pins and read the appropriate pin by modifying the Arduino AnalogRead Example. Using the Arduino serial monitor, you should see a RAW value of the analog pin you are using vary from 0 to 1024 as you approach the inductor to the perimeter wire.


Arduino Sensor Analogread

Arduino Analog Read


If you are using the wire perimeter generator and sensor into a robot, you can set a threshold (that will correspond to a distance between the inductor and the perimeter wire) for the robot to get back or turn as soon as this threshold is reached. This way, the robot will keep moving within the delimited zone. So again, how cool is that!


The Eagle, Gerbers, Fritzing and 3D Step files of the Perimeter Wire Generator and Sensor can be downloaded through this link.

We would be happy to hear about your project on the RobotShop’s forum. Also, feel free to share your version of the Perimeter Wire Generator and Sensor in the comments section.


Related Stories


[original entry]

#249: ICRA 2017 Company Showcase, with Li Bingbing, Xianbao Chen, Howard Michel and Lester Teh Chee Onn

 − at 08:00, 10. Dec. 2017

Image: ICRA 2017

In this episode, Audrow Nash interviews several companies at the International Conference for Robotics and Automation (ICRA). ICRA is the IEEE Robotics and Automation Society’s biggest conference and one of the leading international forums for robotics researchers to present their work.


[original entry]

Video Friday: ROS 10 Years, Robotic Imaginations, and Centimetre Bots

 − at 19:11, 08. Dec. 2017

Your weekly selection of awesome robot videos

[original entry]

Review: Ohmni, a Telepresence Robot for the Rest of Your Family

 − at 05:03, 08. Dec. 2017

Is a relatively affordable telepresence robot a worthwhile investment for keeping in touch with people you love?

[original entry]

JPL's AI-Powered Racing Drone Challenges Pro Human Pilot

 − at 22:19, 06. Dec. 2017

It's human vs. machine in this racing drone test

[original entry]

Hamlet iCub and Other Humanoid Robots in Photos

 − at 23:19, 05. Dec. 2017

Enjoy these inspiring and funny photos of humanoid robots in different poses and places

[original entry]

Would you have sex with a robot?

 − at 15:49, 05. Dec. 2017

Cause chances are that you will in the future. Indeed, the development of sexbots is accelerating since we asked “Yes or No to SexBots” in December 2014 and, as Rachel Kaser put it for TheNextWeb, “It’s time to stop freaking out about humans f*cking robots“. Just a couple of weeks ago, two researchers from the University of Manitoba published a paper “The rise of digisexuality: therapeutic challenges and possibilities“. But what is Digisexuality you say? It’s a term that describes “people whose primary sexual identity comes through the use of technology“. This doesn’t describe robotics fetish but people having actual relationships with machines.

Would you have sex with a robot?

Would you have sex with a robot?

What are sexbots?

Sexbots are robots designed to answer a human’s sexual desires. With the development of AI and robotics, they changed the sex doll industry by bringing movement and speech to the dolls. They’re getting more and more lifelike, whether on their physical appearance, or their interactions with their owner. To this day, the vast majority of the sexbots are designed to have a woman’s appearance. With price ranging usually between $5,000 and $10,000, they’re a luxury item.

But as they keep getting better in their reproduction of humans (thanks to AI and innovation in engineering) and cheaper, they will soon be something very common. Which leads us to the question: how will they transform our society?

Will sexbots transform our human interactions for the worse?

While the fact that digisexualities will be commonplace in a couple of years is undisputable, the ethical and societal ramifications are still unclear. For instance, the reveal of a special mode on the Roxxxy TrueCompanion sex doll earlier this year generated an intense debate. Indeed, the “Frigid Farrah” mode is designed for the user to simulate rape. Which lead to the question of knowing if robots will mitigate or normalize sexual violence.


Frigid Farrah – the sexbot designed to simulate rape

Furthermore, with robots only being able to display a limited range of emotions (at least until we reached a superior level of AI) one can wonder how that will affect human to human relationships. A paper published last year in the International Journal of Social Robotics asked the question

What will be the impact of human–robot relationships on the relationships we have with other humans? Will it change our (moral) standards of friendship and ultimately lower them? Hence, another concern here is that if we come to accept these unidirectional emotional bonds with robotic others, will this degrade our relationships with other humans? There is indeed a concern whether robot technology might replace human contact all together.

A lifelike robotic sex doll

A lifelike robotic sex doll

Last but not least, one can wonder if by having their sexual desires answered by a tailor-made machine, and following the theory of the path of least resistance, humans will lose the motivation induced by sexual desire and will to seduce?

Or will they actually improve lives?

As sexbots will be a common thing, we should shift the debate to highlight what are their benefits for society and determine if they outweigh the disadvantages. For a start, looking at it from a pure clinical perspective, sexual robots don’t have to give consent, they’re not subject to pregnancy (whether becoming or making someone pregnant), and they’re not prone to carry, develop, and transmit STDs (as long as they’re used hygienically and cleaned correctly).


Finding love with a machine – Digisexuality

Furthermore, an article named “Love and sex in the Robotic Age: exploring human-robot relationships” published in the Institution of Engineering and Technology website, said:

most experts in the field believe robot companions can greatly benefit sections of society such as the elderly, the lonely and the socially challenged

Indeed, when a robots become an object of affection, comfort, and emotional importance for its user, it fulfills a need that not many things can. It can help people feel loved and be happy. So why should we deprive them from that?


Thanks to AI, robots will be able to perfectly reproduce human behavior and feelings

Drs MacArthur and Twist, the authors of the Digisexuality paper mentioned earlier, said the following in a Broadly interview:

We shouldn’t be afraid of them. We should be willing to experiment with them, and to enjoy what they have to offer. People’s anxiety around sex and technology can cause them to miss out on things they might really enjoy.

And by that, they expressed the fundamental thing about modern and future robotics. We should embrace the robots for the benefits they can bring to our lives, and not rejected for the things they can’t do. (Yet).


Related Stories


[original entry]

Artificial Intelligence Predicts Outcomes of Chemical Reactions

 − at 15:30, 04. Dec. 2017

An AI built by IBM could help organic chemists find new ways to synthesize drugs

[original entry]

Video Friday: Pepper at Work, Robot Muscles, and NASA's Next Rover

 − at 18:59, 01. Dec. 2017

Your weekly selection of awesome robot videos

[original entry]

Servo Magazine’s Review of the Lynxmotion Quadrino Nano

 − at 14:11, 01. Dec. 2017

We’ve had the pleasure to read in the October issue of Servo Magazine a glowing review of our Lynxmotion Quadrino Nano. We’re sharing some excerpts and images of the article with you today.

lynxmotion quadrino nano

There is a plethora of flight controllers on the market. Some tout their small size and low cost. Others offer advanced flight planning functionality. Yet others aim to target the true tinkerer with open source firmware that can be hacked to add features. I was thrilled when RobotShop offered to let me evaluate their Lynxmotion Quadrino Nano flight controller module. This flight controller hits many of the check boxes for most hobbyists in a tiny package. Let’s unbox and install the Quadrino on our homebuilt quad, and play with some of the settings to get into the air.

The Quadrino is a pretty powerful little flight controller, packing an ATmega 2560, inertial measurement unit (IMU), barometer, and GPS on board. The flight controller also offers plenty of expansion ports. There are I/O headers to interact with the ATmega, and two I2C and three UART ports exposed! Everything from sonic rangers to camera triggers could be attached to these ports.


After UPS dropped off the box at my doorstep, I immediately cut into it and was surprised to find a hard plastic case inside. Yes, the nano comes packaged in a hard case with custom foam inserts! This was instantly a treat compared to the crushed cardboard boxes our electronics so often show up in. Inside the box is a set of cables for the drone, USB micro cable, GPS, a few tools, double-stick tape, flight controller, connector chart card, and Lynxmotion sticker.


Photo courtesy of Servo Magazine

I have to say, that the attention to detail in the packaging was really nice, and it’s good to know when switching out flight controllers for testing (as often happens), there is a safe place for the Quadrino to live.



Like any other flight controller, the Quadrino takes signals from an RC receiver module, interprets them, combines the control inputs with the state data of the craft, then effects changes in the motor control outputs to modify the craft’s attitude. This isn’t all that dissimilar from commercial “fly-by-wire” systems in which pilots no longer manipulate the control surfaces of aircraft, but provide inputs to a flight control system that maintains the stability of the aircraft during the maneuver and eases pilot strain. To get our flight controller up and running — at a minimum — we need to connect it to the RC receiver and electronic speed controllers (ESCs).


Here, we set what flight mode the system will operate in and how the system is armed.

I used a three-position switch on my controller to set the flight mode, and a two-position switch to arm and disarm the system.

The online instructions indicate that a stick pattern is used to arm the flight controller — much like the original OpenPilot system. However, I believe that is a relic of past firmware as it did not arm the current system.

As far as flight modes go, I elected to operate in angle + mag mode by default. This is similar to the stabilized mode of the Parallax ELEV-8 — an easy-to-fly configuration. I used a magnetic heading mode as one, which should hold the craft in a constant magnetic heading (unless acted upon by the yaw control) and land.

I did really like that you could see the position of each switch on the controller via the color changing boxes. This made it easy for me to confirm which mode would be active with which switch position. Note that when settings are changed, the outline of the box turns orange, indicating that the settings have not been written to the flight controller. Make sure you save and write these settings!

Before flying, we also need to calibrate the accelerometer and magnetometer in the Quadrino. This is done with buttons on the Flight Deck panel.


Photo courtesy of Servo Magazine



Now that everything is calibrated and properly set up, you should see a flight deck display that shows the orientation and heading of your craft accurately, and moves appropriately if you tilt or rotate the craft. (A common point of confusion is the artificial horizon. Remember, the brown represents the ground. So, in a right bank, the right side of the indicator will rise.) […] The overall flying experience with the Quadrino is very pleasant. It flies nicely, but suffers some from the slightly complex setup and lack of auto control range sensing (hence, all of the trimming). With an improved firmware configuration and ground station software, it would be an even better product.


Photo courtesy of Servo Magazine



In the end, I thought the Quadrino was a really nice product with a very small form factor. It’s lightweight and has lots of versatility for the hacker/maker.

Reprinted by permission of T&L Publications, Inc. – Read the full article here. Originally written by John Leeman.


Related Stories


[original entry]