Pat yours back; you have set up the XBee Coordinator successfully! Now remove the Coordinator and insert the other XBee (XB2) and open Configuration window. After checking Read, and getting the parameters shown on the middle window, go to the Function Set pull-down menu and select XBee Router API. In Version pull-down select the highest number. Find the PAN in the Networking parameter and enter 7821 (same as the Coordinator XBee). Set the JV parameter as 1, as it will set the Router to rejoin the coordinator on startup.

Fig. 9: An actual-size PCB pattern for XBee-controlled aircraft (receiver side)
Fig. 9: An actual-size PCB pattern for XBee-controlled aircraft (receiver side)
Fig. 10: Component layout for the PCB (receiver side)
Fig. 10: Component layout for the PCB (receiver side)

Download PCB pattern and component layout PDFs: click here

Download source code: click here

In Addressing parameter the DH shall be as written on the XBee and the DL shall be the DL number written on the Coordinator XBee. So far so good! Now come down further to IO Settings to set up analogue and digital data entry part of the router XBee.

In the IO Settings parameter, D0, D1, D2, D3 are the four analogue input pins through which we will send our 4-channel analogue data. By default these pins are disabled. To enable them, go to IO Settings and make D0, D1, D2, D3 as 2 (as analogue data entry). However, these pins can be made digital data input or output pins also by simply changing to 3, 4 or 5. Set D5 to 4. This pin will be used as feedback signal from receiver XBee (XB2).

Now come to I/O Sampling section and set the IR sampling to 64, that is, 0X64. Once it is on 100-millisecond the feedback will be checked.

Check Write and let the configuration be written in XBee (XB2).

Construction and testing
An actual size, single-side PCB for the XBee-controlled aircraft transmitter circuit is shown in Fig. 7 its component layouts in Fig. 8. PCB for receiver circuit is shown in Fig. 9 and its component layout in Fig. 10.

PCB of receiver board1 is in the form of shield, so mount it on top of Arduino UNO board. Connect 3.7V battery to transmitter section and 11.1V battery to receiver section. Check working of BLDC motor by varying VR1, of servo motor M1 using VR4, of servo motor M2 using VR2 and of servo motor M3 using VR3. If there is any problem, verify voltages at test points given in the table.

Building an RC aircraft requires some basic skills and creativity. There are rich tutorials available on the Internet. Some useful information to build your own RC aircraft can be found from the links below:

You can either build the body of the aircraft yourself or get it ready-made from an electronics spares shop. The receiver PCB, along with the 11.1V battery, should be mounted firmly in the aircraft.

The RC aircraft can be launched by gathering speed on a long runway while some are launched by hand by literally throwing them into the air. In the first case, as soon as your plane builds up enough speed and catches wind, it will lift from the ground. But note that, if the runway surface is uneven (like grass-covered), your plane might not be able to gather the necessary speed for take-off. In that case you should opt for hand-launch.

Remember, the aircraft is controlled by a remote control which has a finite range. If your plane gets too far away from you (either vertically or horizontally), you might lose control and the plane would plummet back to the ground. The usual way to fly it is in circles above your head.

After assembling the complete project, switch on transmitter and receiver circuits. Slowly vary VR1 to increase the speed of the BLDC motor (propeller). Once the plane takes off and is stabilised above the ground, vary VR2, VR3 and VR4 one by one, gradually, and observe the effect on flight pattern. To return plane back to ground, reduce its speed using VR1.

The author is an avid user of open source software. Professionally, he is a thermal power expert and works as additional general manager at NTPC



Please enter your comment!
Please enter your name here