emrp2022:start
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
emrp2022:start [2023/03/19 05:08] – osama-haiyl-attallah.attallah | emrp2022:start [2023/03/19 07:07] (current) – osama-haiyl-attallah.attallah | ||
---|---|---|---|
Line 327: | Line 327: | ||
Here in this tutorial we are going to build a HexaCopter using PixHawk 2.4.8 flight controller. | Here in this tutorial we are going to build a HexaCopter using PixHawk 2.4.8 flight controller. | ||
- | We will use the standard frame of hexacopter model X for this tutorial. Our drone will look like drone shown in figure | + | We will use the standard frame of hexacopter model X for this tutorial. Our drone will look like drone shown in figure |
{{: | {{: | ||
- | Figure | + | Figure |
Here in the figure CW means ClockWise and CCW means Counterclockwise. Which denotes the rotational direction of servo motors. | Here in the figure CW means ClockWise and CCW means Counterclockwise. Which denotes the rotational direction of servo motors. | ||
Line 393: | Line 393: | ||
For assembling the motors to arms we are going to use M3 screws. For mounting other equipment to the frame we are going to use M2.5 screws. Make sure that you have these screws with you before starting assembly. | For assembling the motors to arms we are going to use M3 screws. For mounting other equipment to the frame we are going to use M2.5 screws. Make sure that you have these screws with you before starting assembly. | ||
- | First take the servo motor and the arm of the drone and set the wires of the motors through the arm to the downside of the arm. So the final structure will look as shown in figure | + | First take the servo motor and the arm of the drone and set the wires of the motors through the arm to the downside of the arm. So the final structure will look as shown in figure |
{{: | {{: | ||
- | Figure | + | Figure |
Use the M3 screws to fix the motor to the arm using your screwdriver. | Use the M3 screws to fix the motor to the arm using your screwdriver. | ||
Line 405: | Line 405: | ||
**Step 2) Soldering all the connections on the board** | **Step 2) Soldering all the connections on the board** | ||
- | On the baseboard of DJI F550 you will see different spots of square silver marking. There will be 2- 2 markings on each ending of the arm side And 2 markings you will see in between the arms. You can see them in the below given figure | + | On the baseboard of DJI F550 you will see different spots of square silver marking. There will be 2- 2 markings on each ending of the arm side And 2 markings you will see in between the arms. You can see them in the below given figure |
{{: | {{: | ||
- | Figure | + | Figure |
Base frame with markings for connections with positive and negative signs | Base frame with markings for connections with positive and negative signs | ||
Line 415: | Line 415: | ||
These markings are the inbuilt connection throughout the frame. | These markings are the inbuilt connection throughout the frame. | ||
- | In this step now we have to solder the ESCs to the connection slots shown in figure | + | In this step now we have to solder the ESCs to the connection slots shown in figure |
{{: | {{: | ||
- | Figure | + | Figure |
**Step 3) Soldering XT60 plug with wires and then onto main board** | **Step 3) Soldering XT60 plug with wires and then onto main board** | ||
Line 435: | Line 435: | ||
[[https:// | [[https:// | ||
- | The end result of soldering the wires to connector will look same as shown in figure | + | The end result of soldering the wires to connector will look same as shown in figure |
{{: | {{: | ||
- | Figure | + | Figure |
- | After this connection is done you can attach these connectors to the main board where we have extra positive and negative terminals in between the base of the arms as shown in figure | + | After this connection is done you can attach these connectors to the main board where we have extra positive and negative terminals in between the base of the arms as shown in figure |
**Step 4) Mounting arms onto base frame** | **Step 4) Mounting arms onto base frame** | ||
Line 449: | Line 449: | ||
For the fixing we will use M2.5 screws. | For the fixing we will use M2.5 screws. | ||
- | Here in figure | + | Here in figure |
{{: | {{: | ||
- | Figure | + | Figure |
- | If you are not able to figure out attaching the arms to the base you can refer to the figure | + | If you are not able to figure out attaching the arms to the base you can refer to the figure |
{{: | {{: | ||
- | Figure | + | Figure |
**Step 5) Connecting ESCs to arm** | **Step 5) Connecting ESCs to arm** | ||
Line 467: | Line 467: | ||
For fixing the position of ESCs to the arm we will use the zip ties and we will fix them to position near to the servo motor wire such that we can easily connect the motors and ESCs. | For fixing the position of ESCs to the arm we will use the zip ties and we will fix them to position near to the servo motor wire such that we can easily connect the motors and ESCs. | ||
- | In figure | + | In figure |
{{: | {{: | ||
- | Figure | + | Figure |
**Step 6) Connecting motors to ESCs** | **Step 6) Connecting motors to ESCs** | ||
Line 477: | Line 477: | ||
Here in this step we will connect the servo motors to ESCs. For that we will connect 3 wires of servo motors to the 3 sockets we have on the ESCs. These three wires are responsible for power supply to motors as well as to send commands from the flight controller about speed. | Here in this step we will connect the servo motors to ESCs. For that we will connect 3 wires of servo motors to the 3 sockets we have on the ESCs. These three wires are responsible for power supply to motors as well as to send commands from the flight controller about speed. | ||
- | Make sure that your connection looks same as the one shown in figure | + | Make sure that your connection looks same as the one shown in figure |
{{: | {{: | ||
- | Figure | + | Figure |
**Step 7) Connecting ESCs, GPS module, Receiver to flight controller** | **Step 7) Connecting ESCs, GPS module, Receiver to flight controller** | ||
Line 487: | Line 487: | ||
**part 1) Overview of flight controller connections** | **part 1) Overview of flight controller connections** | ||
- | In this step we will connect all wires of our electronics to the flight controller. We are going to use PixHawk 2.4.8 flight controller in this tutorial. So first we will mount the wires plug to the respective location on the flight controller. Below given figure | + | In this step we will connect all wires of our electronics to the flight controller. We are going to use PixHawk 2.4.8 flight controller in this tutorial. So first we will mount the wires plug to the respective location on the flight controller. Below given figure |
{{: | {{: | ||
- | Figure | + | Figure |
** part 2) Mounting Flight controller to base frame** | ** part 2) Mounting Flight controller to base frame** | ||
- | First thing first, So we will first mount the Flight controller firmly to the base of the frame with 2 sided tape. Make sure that it is exactly in the middle so that the weight of other electronic items can be distributed evenly to the drone body. Here in the figure | + | First thing first, So we will first mount the Flight controller firmly to the base of the frame with 2 sided tape. Make sure that it is exactly in the middle so that the weight of other electronic items can be distributed evenly to the drone body. Here in the figure |
{{: | {{: | ||
- | Figure | + | Figure |
** part 3) Adding safety switch and buzzer** | ** part 3) Adding safety switch and buzzer** | ||
- | We will add our Buzzer and safety switch to the flight controller (These are mandatory to add). Figure | + | We will add our Buzzer and safety switch to the flight controller (These are mandatory to add). Figure |
{{: | {{: | ||
- | Figure | + | Figure |
** part 4) Adding GPS and Compass** | ** part 4) Adding GPS and Compass** | ||
- | Now we will add a GPS module and compass to the flight controller. For this we will use the I2C cable and GPS module (separately bought) which we have. Attach them as shown in figure | + | Now we will add a GPS module and compass to the flight controller. For this we will use the I2C cable and GPS module (separately bought) which we have. Attach them as shown in figure |
{{: | {{: | ||
- | Figure | + | Figure |
** part 5) Adding Power Supply to Flight controller** | ** part 5) Adding Power Supply to Flight controller** | ||
Line 523: | Line 523: | ||
__Note: Power module will give power supply to the flight controller only and not power the ESCs and servo motor. For that we have to use the XT60 connector to main frame input which we solder in step 2.__ | __Note: Power module will give power supply to the flight controller only and not power the ESCs and servo motor. For that we have to use the XT60 connector to main frame input which we solder in step 2.__ | ||
- | The connection for power module to power supply socket is shown in figure | + | The connection for power module to power supply socket is shown in figure |
{{: | {{: | ||
- | Figure | + | Figure |
** part 6) Adding Radio control to the Flight controller** | ** part 6) Adding Radio control to the Flight controller** | ||
- | Here in this section we will add radio control wires to the side of the controller as shown here in figure | + | Here in this section we will add radio control wires to the side of the controller as shown here in figure |
{{: | {{: | ||
- | Figure | + | Figure |
{{: | {{: | ||
- | Figure | + | Figure |
** part 7) Adding Telemetry radio to flight controller** | ** part 7) Adding Telemetry radio to flight controller** | ||
- | Telemetry radio will be in pairs. So we have to take one of those radios and connect it to the location shown in figure | + | Telemetry radio will be in pairs. So we have to take one of those radios and connect it to the location shown in figure |
{{: | {{: | ||
- | Figure | + | Figure |
** part 8) Connecting ESCs to flight controller** | ** part 8) Connecting ESCs to flight controller** | ||
- | For connecting ESCs to the flight controller we have to see the top side of the flight controller. There we will see different ports with numbers from 1 to 8 and few other ports. We will use the ports numbered from 1 to 6 outside the bordered ones. We will fix all the wires from our ESCs to the ports as shown in figure | + | For connecting ESCs to the flight controller we have to see the top side of the flight controller. There we will see different ports with numbers from 1 to 8 and few other ports. We will use the ports numbered from 1 to 6 outside the bordered ones. We will fix all the wires from our ESCs to the ports as shown in figure |
{{: | {{: | ||
- | Figure | + | Figure |
Finally the connection part of all the electronic devices to the flight controller is done. | Finally the connection part of all the electronic devices to the flight controller is done. | ||
- | The final result of the fully connected flight controller will look like figure | + | The final result of the fully connected flight controller will look like figure |
Make sure that all the ports and wires are firmly connected and have a strong and proper connection. | Make sure that all the ports and wires are firmly connected and have a strong and proper connection. | ||
Line 565: | Line 565: | ||
{{: | {{: | ||
- | Figure | + | Figure |
**Step 8) Mounting drone body landing gear** | **Step 8) Mounting drone body landing gear** | ||
Line 571: | Line 571: | ||
Generally it is advised to add landing gear in the end because we may apply force to stick all units on the base frame while using double sided tape or zip ties. | Generally it is advised to add landing gear in the end because we may apply force to stick all units on the base frame while using double sided tape or zip ties. | ||
- | Below given figure | + | Below given figure |
{{: | {{: | ||
- | Figure | + | Figure |
{{: | {{: | ||
- | Figure | + | Figure |
**Step 9) Cable management** | **Step 9) Cable management** | ||
- | Cable management is not the specific stage but a continuous process. Have a habit to group a particular set of wires to one side and another to the other side. This will help you to manage and check the connection at the very end when you try to figure out the errors while calibrating. Do not hesitate to use zip ties to group the wires. But make sure that wires don't get stretched too much that they may break. Fixing wire circularly around the flight controller and other electronics is the preferred way. You can see the grouping of wires and making a bundle of it and fixing it in between the radio and the flight controller using zip ties in figure | + | Cable management is not the specific stage but a continuous process. Have a habit to group a particular set of wires to one side and another to the other side. This will help you to manage and check the connection at the very end when you try to figure out the errors while calibrating. Do not hesitate to use zip ties to group the wires. But make sure that wires don't get stretched too much that they may break. Fixing wire circularly around the flight controller and other electronics is the preferred way. You can see the grouping of wires and making a bundle of it and fixing it in between the radio and the flight controller using zip ties in figure |
**Step 10) Securing Top board** | **Step 10) Securing Top board** | ||
- | Securing the top board is as important as securing the bottom board as it will hold the structure of the drone. Also it will give support to battery and GPS modules or If we attach any sensor or mini CPU on a drone like Jetson NX. It is preferred to do it at the very end. We will fix the upper frame board to the arms by using 4 M2.5 screws each. We will do it exactly as shown in figure | + | Securing the top board is as important as securing the bottom board as it will hold the structure of the drone. Also it will give support to battery and GPS modules or If we attach any sensor or mini CPU on a drone like Jetson NX. It is preferred to do it at the very end. We will fix the upper frame board to the arms by using 4 M2.5 screws each. We will do it exactly as shown in figure |
**Step 11) Mounting GPS module to the upper frame** | **Step 11) Mounting GPS module to the upper frame** | ||
- | We will use double sided tape to fix the base of the gps module to the top part of the frame. Make sure that the direction on the GPS module is exactly the same to the direction shown on the flight controller. Here we are using a 3D printed GPS mount for our drone but you can easily get the drone GPS with or without a stand so that you can fix it directly to the main frame. Mounting of the GPS holder to the top frame is shown in figure | + | We will use double sided tape to fix the base of the gps module to the top part of the frame. Make sure that the direction on the GPS module is exactly the same to the direction shown on the flight controller. Here we are using a 3D printed GPS mount for our drone but you can easily get the drone GPS with or without a stand so that you can fix it directly to the main frame. Mounting of the GPS holder to the top frame is shown in figure |
{{: | {{: | ||
- | Figure | + | Figure |
This is the end of the assembly part. | This is the end of the assembly part. | ||
Line 624: | Line 624: | ||
After having installed the ground control software, the appropriate firmware will have to be installed to the flight controller. This can be done by connecting the flight controller directly with a USB cable to the PC. You will be prompted with a connect option in the ground control software after connecting the cable. After connection in the PC is successful, navigate to Vehicle Setup, Firmware and select the Stable release of the firmware. Of course custom firware can be downloaded online and can be fitted through Advanced settings. The vehicle setup screen is shown below | After having installed the ground control software, the appropriate firmware will have to be installed to the flight controller. This can be done by connecting the flight controller directly with a USB cable to the PC. You will be prompted with a connect option in the ground control software after connecting the cable. After connection in the PC is successful, navigate to Vehicle Setup, Firmware and select the Stable release of the firmware. Of course custom firware can be downloaded online and can be fitted through Advanced settings. The vehicle setup screen is shown below | ||
- | {{: | + | {{: |
- | A video for Mission Planner can be found below | + | Figure 36: Vehicle Setup in QGroundControl |
- | https:// | + | A firmware setup video for Mission Planner can be found below |
- | After firmware uploading is complete, navigate to airframe to pick the respective model you based and assembled your drone on. For the hexacopter, choose the airframe shown in Figure | + | {{youtube> |
+ | |||
+ | |||
+ | |||
+ | After firmware uploading is complete, navigate to airframe to pick the respective model you based and assembled your drone on. For the hexacopter, choose the airframe shown in Figure | ||
==Parameterization of the flight controller== | ==Parameterization of the flight controller== | ||
Line 645: | Line 649: | ||
4- Yaw: controlling clockwise or anticlockwise orientation (rotation upon Z cartesian coordinate) | 4- Yaw: controlling clockwise or anticlockwise orientation (rotation upon Z cartesian coordinate) | ||
- | {{: | + | {{: |
+ | |||
+ | |||
+ | Figure 37: drone controls and their respective movements | ||
source: https:// | source: https:// | ||
Line 669: | Line 676: | ||
The receiver should match the transceiver. To connect the transmitter, | The receiver should match the transceiver. To connect the transmitter, | ||
- | {{: | + | {{: |
+ | |||
+ | |||
+ | Figure 38: Graupner transmitter confirming reciever binding | ||
You will then need to calibrate the radio such as below. Click on calibrate, and follow the instructions given on the screen. | You will then need to calibrate the radio such as below. Click on calibrate, and follow the instructions given on the screen. | ||
- | {{: | + | {{: |
+ | |||
+ | Figure 39: Radio calibration in QGroundControl | ||
A video for radio calibration in Mission Planner can be found below | A video for radio calibration in Mission Planner can be found below | ||
- | https:// | + | {{youtube>cxc1UMAVCd4?}} |
Line 696: | Line 709: | ||
- Brake mode: Immediately stops the drone | - Brake mode: Immediately stops the drone | ||
- | Try to setup a logical and easy-to-configure choice of flight modes, as it will be necessary to remember how you mapped them later during flight. The current set flight mode appears on the main screen of the ground control software. | + | Try to make a logical and easy-to-configure choice of flight modes, as it will be necessary to remember how you mapped them later during flight. The current set flight mode appears on the main screen of the ground control software. |
Note while configuring the remote to the Qgroundcontrol: | Note while configuring the remote to the Qgroundcontrol: | ||
Line 711: | Line 724: | ||
- Throttle friction | - Throttle friction | ||
- | - Throttle ratchet | + | - Throttle ratchet |
Line 723: | Line 736: | ||
A video for compass calibration in Mission Planner can be found | A video for compass calibration in Mission Planner can be found | ||
- | https:// | + | {{youtube>3_mxkVIwAcw?}} |
Following that, calibrate the Accelerometer by also following the instructions on the screen provided, make sure aforementioned precautions are taken. | Following that, calibrate the Accelerometer by also following the instructions on the screen provided, make sure aforementioned precautions are taken. | ||
Line 733: | Line 746: | ||
==Setup power and ESC calibration== | ==Setup power and ESC calibration== | ||
- | Before setting up the power source, some essentials have to be provided: | + | Before setting up the power source, some considerations: |
- | Battery parameters: | ||
- | - Voltage: for 4S1P (4 LiPo cells), 14.8 V | + | ESC Output capability: max 17.4 V |
- | + | ||
- | - Capacity: 5000mAh | + | |
- | + | ||
- | - Discharge rate: 30+/60C | + | |
- | + | ||
- | ESC parameters: | + | |
- | + | ||
- | - Output capability: max 17.4 V | + | |
- | + | ||
- | Motor parameters: | + | |
- | + | ||
- | - Maximum current (A): | + | |
- | + | ||
- | - Maximum voltage (V): | + | |
- | + | ||
- | - KV values: 960 rpm | + | |
- | + | ||
- | RPM= Kv * Voltage | + | |
- | + | ||
- | for example: LBP2860, Maximum Current is80A, Maximum Voltage is 17V and 3400MV. | + | |
Check the specifications of the battery: | Check the specifications of the battery: | ||
Line 764: | Line 756: | ||
{{: | {{: | ||
+ | |||
+ | Figure 40: 4S LiPo 14.8 V 5 Ah battery | ||
Considerations: | Considerations: | ||
Line 782: | Line 776: | ||
- | Additionally the battery can be charged with the machine | + | Figure 41: Power setup and ESC calibration in QGroundControl |
+ | |||
+ | Additionally the battery can be charged with the charger | ||
+ | |||
+ | https:// | ||
- | https:// | ||
==Setup Motors== | ==Setup Motors== | ||
- | Make sure before starting motor calibration and testing that properellers are not screwed on to the motors! Once propellers are removed, flip the switch to allow motor testing. Adjust each individual slider to start the motor spinning. Make sure that motors are spinning in their correct direction. Neighbouring motors should spin in opposite directions. If one of the direction is false, you can simply change the 3 phase wiring of the motor. Switching any two wires of the motor will change direction | + | Make sure before starting motor calibration and testing that properellers are not screwed on to the motors! Once propellers are removed, flip the switch to allow motor testing. Adjust each individual slider to start the motor spinning. Make sure that motors are spinning in their correct direction. |
==Safety warnings== | ==Safety warnings== | ||
- | In the safety section, | ||
+ | {{: | ||
+ | |||
+ | Figure 42: Safety section in QGroundControl | ||
+ | |||
+ | In the safety section, you have the option to include extra measures, such as ground station failsafe to control drone behavior if it lost RC control or ground statio control, in addition to a GeoFence, where you can assign visual boundaries to a physical locations for the drone to not cross. Most importantly, | ||
+ | |||
+ | Make to check the Tuning section in Vehicle Setup to adjust flight characteristics! This is very important to test the sensitivity and response of the drone to transmitter commands | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Figure 43: Tuning options | ||
Line 800: | Line 807: | ||
Head to the main screen, arm the drone and take off. Make sure the test flight is carried out in a field, be aware of the altitude limit in the area | Head to the main screen, arm the drone and take off. Make sure the test flight is carried out in a field, be aware of the altitude limit in the area | ||
- | https:// | + | {{youtube>MIeKfTu-_V0?}} |
- | https:// | + | {{youtube>tCXYo-r2UPo?}} |
- | =====Programming | + | =====Programming, Control |
- | Drones can be programmed through a software development kit (SDK) or application programming interface (API) in their packages. Most of the drones that are programmable already come with their own firmware. Specialized functions or applications can then be be developed with a programming language like Python, or the SDK if already provided. Dronekit is an API that can be used to interface the drone by sending MAVlink commands to the drone. Dronekit comes readily equipped with intelligent flight path planning and other autonomous functions All complex tasks must be done from the source of a different framework, such as MAVSDK or ROS (robot operating system), which is a group of modular frameworks, wherein sensors publish data to subscribers. ROS and ROS 2 are different systems with the same concept. MavROS is a direct connection interface that pushes all the info from MAVlink into a ROS format. | + | Drones can be programmed through a software development kit (SDK) or application programming interface (API) in their packages. Most of the drones that are programmable already come with their own firmware. Specialized functions or applications can then be be developed with a programming language like Python, or the SDK if already provided. |
+ | Dronekit is an API that can be used to interface the drone by sending MAVlink commands to the drone. Dronekit comes readily equipped with intelligent flight path planning and other autonomous functions All complex tasks must be done from the source of a different framework, such as MAVSDK or ROS (robot operating system), which is a group of modular frameworks, wherein sensors publish data to subscribers. There is also ROS 2, but ROS and ROS 2 are different systems with the same concept. MavROS is a direct connection interface that pushes all the info from MAVlink into a ROS format. Drones have a the vast potential in remote sensing because of aerial photographic and surveillance capabilites, | ||
- | For image processing, you can' | + | However, there are some limitations that can hinder drones. First is the restriction on the weight and area available on the drone surface necessary to compute alogrithms with few hardware resources. If adequate processing power is needed, at most a battery with more cells i.e. bigger voltage and weight are also required. Additionally, |
+ | A prominent example of object classification applications is the identification and distinction between dogs and wolves, this can be useful in, for example farms or ranches where cattle lives, where the operating drone spots an invading wolf and would enact a mission program to chase and scare it away. Another instance is the rescue of lost pets, or identification of drowning or endangered animals, to help rescue them. By programming in Python and applying convolutional neural networks, this can be setup with the following: | ||
- | =====Conclusion===== | ||
+ | Data/Photos selection: a dataset of different dog and wolf breeds is assembled | ||
+ | |||
+ | Data augmentation: | ||
+ | |||
+ | Preparing and testing the model: training convolutional models | ||
+ | |||
+ | Using Data with convolutional neural networks | ||
+ | |||
+ | Evaluation of results: based on classiication accuracy | ||
+ | |||
+ | For more details: https:// | ||
+ | |||
+ | |||
+ | Another capability is the appliation of drones in agriculture and environmental monitoring, where drones equipped with cameras can enhance precision agriculture performance, | ||
+ | |||
+ | source: https:// | ||
+ | |||
+ | |||
+ | =====Conclusion===== | ||
+ | Going through this tutorial, you should have gained enough knowledge about certain components of drones, the step-by-step assembly of a DJI F550 Flamewheel hexacopter, ground control software, calibration of different parts of the drone, some safety precautions to stick to when working with drones, got to know briefly about the programming of drones and their promising potential in remote sensing applications such as for domestic animals, wildlife diffentiation, | ||
=====Supplementary===== | =====Supplementary===== | ||
Line 823: | Line 851: | ||
{{ : | {{ : | ||
< | < | ||
- | + | ||
+ | | ||
=== Inverted Pendulum with PID === | === Inverted Pendulum with PID === | ||
emrp2022/start.1679198892.txt.gz · Last modified: 2023/03/19 05:08 by osama-haiyl-attallah.attallah