## XJME1010: Computing For Engineers

### Lab #1.1: Circuit Training

INTRODUCTION

Ethun Hant is trapped – swinging beneath a helicopter, plunging towards the ground…

It looks like there can be no escape – unless you can help….

… you hack into the helicoper control system using the ReLOAD satellite system conveniently, you find the helicopter’s controlled by an Arduino…

Your mission (and you must choose to accept it): is to program an autopilot system, bringing the helicopter to a steady hover at just the right height for us to rescue him..

This coursework will self-destruct after the deadline!

Please read this coursework guide carefully for full instructions, including your objectives, technical background and a mark scheme. Over and Out.

Program a helicopter autopilot… 工程计算代写

Don’t let me down (too quickly)

You

• Lab Notes
• Programming

• Arduino
• Webcam

Coursework

• AutopilotXJME1010: Computing For Engineers

### AIM AND OBJECTIVES 工程计算代写

The aim of this lab is to develop an autopilot control system for a (model) helicopter using an Arduino

OBJECTIVES

1. Write a function to calibrate the helicopters altimeter (to calculate height)
2. Write a function to obtain helicopter height from the calibrated altimeter (using the potentiometer)
3. Write an auto-pilot program which:

a.Uses a target height input defined by the global float variable target_height = 0.2m

b.Implements a closed-loop controller to reach and maintain the target_height

c.Reaches the target height in 2 seconds and holds this position

d.Lights LEDs to indicate (take-off, 2 seconds elapsed, reached target height ±1cm for <2 seconds)

4.Send ’Blackbox’ flight telemetry data to Serial (Time from start, height demand, actual height, control signal)

5.Use good programming practice to produce a well-structured and understandable program

### SYSTEM DESCRIPTION 工程计算代写

You will develop your auto-pilot on the model helicopter system shown below:

Figure 1. Configuration of the model helicopter system

Table 1: Equipment specification for the model helicopter

### SPECIFICATION

Your auto-pilot system should be written to go through the following steps – please read this carefully!

The process is defined by a series of numbered stages – each in bold in the figure below. Each stage requires you to perform some tasks which are detailed.

Your program should send this information, and telemetry data (the movement of the helicopter) to Serial as it runs.

Please see the next section for an example.

AUTO-PILOT BLACKBOX DATAFILE

As your program runs it should generate a BlackBox datafile – formatted in the same way as the example below but with your own data! This must be submitted as part of your coursework to demonstrate that your program runs and how well it performs!

(Note the … just indicates lots more data!)

Example data that should be printed to Serial as your program runs.

Note: the numeric values are only examples – yours should use the actual values you record!

### COMPLETING THE COURSEWORK 工程计算代写

HOW IS IT ASSESSED?

The coursework is worth 50% of the overall XJME1010 module mark.

It is designed to be completed individually, without any collaboration with other students.

Expertise: The programming and skills required to complete this coursework relate directly to the learning objectives of this part of the module. They have been covered in the lecture and lab activities – please refer back to these for examples.

When to complete the work?

You can use drop-in sessions, lab-sessions and your self-study time.

Deliverables: You must submit the following items through Minerva – correctly named –to receive a mark

• A ZIP file named         (Name username_XJME1010.zip                 e.g.                 men18xyz_XJME1010.zip)

o Arduino File: (Name: username_XJME1010.ino                                          e.g.                 men18xyz_XJME1010.ino)

o CSV Data from ReLOAD(Original name                                                    e.g.                 Experiment_1614027456688_data.csv)

o Video from ReLOAD (Original name                                                       e.g.                  RELOA_15_Mar_2021_14_49_5722.mp4)

Please do not alter data-files or your submission will be investigated for plagiarism!

### MARK ALLOCATION 工程计算代写

The table below details how marks will be assigned for your project work. These are linked to the learning objectives that this coursework has been designed to assess. These are based on the material you have covered in the lectures, labs and self-study exercises, look back at your notes for examples and reminders!