Exercise - Using Simulation Macros
Simulation macros are a form of Component macros. Their purpose is to make simulation more realistic by adding physical components to the electronic devices.
When the Flowcode program is compiled and downloaded to a microcontroller, they are ignored - hence the name Simulation macros.
Even a cursory glance at the dialogue box used to configure them shows that they are very powerful devices, with a huge range of possible effects.
This exercise uses two of them to illustrate the use of a PIR (passive infra-red sensor) to operate an intruder sensor.
The scenario
The scene depicts the front of a house.
A PIR sensor is mounted on the wall of the house, above the path leading across the garden.
The data sheet for the PIR shows that it is sensitive to a range of 10 metres, within a cone of angle 100 degrees.
Its detection area is represented by the pale blue cone.
When an intruder enters the detction cone, a warning lamp lights up in the house.
The physical bits
With the System Panel visible, and viewed from above (the default position,)on it create:
- a brick wall, represented by adding a red cuboid and changing it to a rectangle, 15mm wide, 120mm high and 120mm deep,
- located at coordinates x = 0, y = 0, z = 60,
- with rotation settings X = 0, Y = 0, Z = 0;
- a path, represented by a grey rectangle, 240mm wide, 100mm high and 0mm deep,
- located at coordinatesx = 125mm, y = 0mm, z = 0mm,
- with rotation settings of X = 0, Y = 0, Z = 0;
- a cone, couloured light blue, representing the sensing region of the PIR, with width = 70mm, height = 250mm, depth 95mm,
- located at coordinates x = 45mm, y = 0mm, z = 80mm,
- with rotation settings of X = 0, Y = -55, Z = 0.
- Drag the mouse cursor over these three elements and group them together. This produces 'group 1'.
- Give it:
- dimensions - width = 265mm, height = 250mm, depth = 135mm;
- coordinates - x = 128, y = 0, z = 68;
- rotation - X = 0, Y = 0, Z = 0.
- Give it:
Also on the System Panel, create an intruder, by:
- adding four spheres, and configuruing the properties as follows:
- sphere 1 (the head):
- colour pink;
- dimensions - width = 12mm, height = 13mm, depth = 15mm;
- coordinates - x = -2.2, y = 0.7, z = 22;
- rotation - X = 90, Y = 0, Z = 0.
- sphere 1 (the head):
- sphere 2 (the body):
- colour blue;
- dimensions - width = 14mm, height = 26mm, depth = 24mm;
- coordinates - x = -2.2, y = 0.5, z = 4;
- rotation - X = 90, Y = 0, Z = -180.
- sphere 2 (the body):
- sphere 3 (the legs):
- colour dark green;
- dimensions - width = 9mm, height = 23mm, depth = 15mm;
- coordinates - x = -2.2, y = 1, z = -16;
- rotation - X = 90, Y = 0, Z = -180.
- sphere 3 (the legs):
- sphere 4 (the feet):
- colour black;
- dimensions - width = 6mm, height = 15mm, depth = 25mm;
- coordinates - x = -6, y = 0, z = -25;
- rotation - X = 90, Y = 90, Z = 0.
- sphere 4 (the feet):
- Drag the mouse cursor over the four spheres and group them together.This produces 'group 2'.
- Give it:
- dimensions - width = 18mm, height = 32mm, depth = 60mm;
- coordinates - x = 165, y = 0, z = 28;
- rotation - X = 0, Y = 0, Z = 0.
- Give it:
The System Panel should resemble the image shown opposite.
(The image has been rotated to show all components. The table-top is coloured green.)
The Flowcode program
- On the Startup screen, click on 'New project' to create a new flowchart.
- Add the icons shown in the flowchart:
- Flowcode
- Experienced
- Students
Adding supplementary code
This feature
Definitions and function declarations:
This is
Function implementations: