Jump to content

Component: Gyroscope (EBM009) (EBM Modules): Difference between revisions

From Flowcode Help
XML import - Pre 8.0 release
 
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder""
 
(22 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
{| style="width:50%"
 
{| width="50%"
|-
|-
| width="20%" style="color: gray;" | Author
| width="20%" style="color:gray;" | Author
| Matrix TSL
| Matrix TSL
|-
|-
| width="20%" style="color: gray;" | Version
| width="20%" style="color:gray;" | Version
| 2.0 (Release)
| 2.0
|-
|-
| width="20%" style="color: gray;" | Category
| width="20%" style="color:gray;" | Category
| EBM Modules
| EBM Modules
|}
|}




==Gyroscope component==
Interface to the L3G4200D three axis digital gyroscope.  Panel GUI can be used to simulate incoming data for testing.


==[[File:Component Icon 7b1edf74_d0c8_4b1d_a8b3_54580ed79f64.png|Image]] Gyroscope (EBM009) component==
==Component Source Code==
Interface to the L3G4200D three axis digital gyroscope.  Panel GUI can be used to simulate
incoming data for testing.


==Examples==
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_EBM009v1.fcfx FC_Comp_Source_EBM009v1.fcfx]
''<span style="color:red;">No additional examples</span>''


Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_EBM009v1.fcfx FC_Comp_Source_EBM009v1.fcfx]


==Downloadable macro reference==
==Detailed description==


===<span style="font-weight: normal;"><u><tt>GetZ</tt></u></span>===
Returns the previously sampled Z axis data


'''Parameters'''


:''This macro has no parameters''




'''Return value'''


:[[Variable Types|INT]]




===<span style="font-weight: normal;"><u><tt>GetY</tt></u></span>===
Returns the previously sampled Y axis data


'''Parameters'''


:''This macro has no parameters''




'''Return value'''


:[[Variable Types|INT]]




===<span style="font-weight: normal;"><u><tt>GetX</tt></u></span>===
Returns the previously sampled X axis data


'''Parameters'''


:''This macro has no parameters''




'''Return value'''


:[[Variable Types|INT]]




===<span style="font-weight: normal;"><u><tt>SampleDevice</tt></u></span>===
Reads the Axis data from the device. Returns 0 if successful


'''Parameters'''
''No detailed description exists yet for this component''


:''This macro has no parameters''
==Examples==




'''Return value'''


:[[Variable Types|BYTE]]




===<span style="font-weight: normal;"><u><tt>ReadRegister</tt></u></span>===
Read the data byte at the given address of the device


'''Parameters'''


:[[Variable Types|BYTE]] ''address''
::address of the register to be read




'''Return value'''


:[[Variable Types|BYTE]]




===<span style="font-weight: normal;"><u><tt>WriteRegister</tt></u></span>===
Writes the data byte to the given address of the device.


Returns 0 if successful


'''Parameters'''


:[[Variable Types|BYTE]] ''address''
::address of register to be written with data byte


:[[Variable Types|BYTE]] ''data''
::data byte to be written to device register




'''Return value'''


:[[Variable Types|BYTE]]




===<span style="font-weight: normal;"><u><tt>Initialise</tt></u></span>===
Initialise the component.


Returns 0 if successful


'''Parameters'''


:''This macro has no parameters''


Sample program demonstrating the EBM009 Gyroscope Sensor.


'''Return value'''
The program plots X, Y and Z data onto the LCD screen.


:[[Variable Types|BYTE]]
{{Fcfile|EBM009 - Test Program.fcfx|EBM009 Example}}






==Simulation macro reference==


''This component does not contain any simulation macros''




==Property reference==
<span style="font-weight: normal;"><u>Output Data Rate</u></span>


This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''ODR''.


''<span style="color:red;">No additional information</span>''






<span style="font-weight: normal;"><u>Full Scale Selection</u></span>


This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''FSS''.
==Macro reference==


Specifies the maximum angular speed which the sensor can measure in degrees per second
===GetX===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''GetX'''
|-
| colspan="2" | Returns the previously sampled X axis data&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


<span style="font-weight: normal;"><u>X Axis</u></span>


This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''XEN''.
===GetY===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''GetY'''
|-
| colspan="2" | Returns the previously sampled Y axis data&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


''<span style="color:red;">No additional information</span>''


===GetZ===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''GetZ'''
|-
| colspan="2" | Returns the previously sampled Z axis data&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}




<span style="font-weight: normal;"><u>Y Axis</u></span>
===Initialise===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''Initialise'''
|-
| colspan="2" | Initialise the component. Returns 0 if successful&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''YEN''.


''<span style="color:red;">No additional information</span>''
===ReadRegister===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''ReadRegister'''
|-
| colspan="2" | Read the data byte at the given address of the device&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Reg
|-
| colspan="2" | address of the register to be read&nbsp;
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}




===SampleDevice===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''SampleDevice'''
|-
| colspan="2" | Reads the Axis data from the device. Returns 0 if successful&nbsp;
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


<span style="font-weight: normal;"><u>Z Axis</u></span>


This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''ZEN''.
===WriteRegister===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''WriteRegister'''
|-
| colspan="2" | Writes the data byte to the given address of the device. Returns 0 if successful&nbsp;
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Reg
|-
| colspan="2" | address of register to be written with data byte&nbsp;
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | data
|-
| colspan="2" | data byte to be written to device register&nbsp;
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}


''<span style="color:red;">No additional information</span>''


==Property reference==


 
{| class="mtx-class-macrotable wikitable"
<span style="font-weight: normal;"><u>Label</u></span>
|-
 
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]]
This property is of type ''Line of text'' and can be referenced with the variable name ''label_text''.
| width="90%" class="mtx-class-macrohead" | '''Properties'''  
 
|-
''<span style="color:red;">No additional information</span>''
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Output Data Rate
 
|-
<span style="font-weight: normal;"><u>Channel</u></span>
| colspan="2" | &nbsp;
 
|-
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''cal_i2c1::CHANNEL''.
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Full Scale Selection
Channel selection
|-
 
| colspan="2" | Specifies the maximum angular speed which the sensor can measure in degrees per second&nbsp;
<span style="font-weight: normal;"><u>SDA</u></span>
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
This property is of type ''Single digital pin'' and can be referenced with the variable name ''cal_i2c1::SDA''.
| width="90%" | X Axis
 
|-
Pin used for SDA (data signal)
| colspan="2" | &nbsp;
 
|-
<span style="font-weight: normal;"><u>SDA Remap Pin</u></span>
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Y Axis
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''cal_i2c1::SDAPins''.
|-
 
| colspan="2" | &nbsp;
''<span style="color:red;">No additional information</span>''
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Z Axis
 
|-
<span style="font-weight: normal;"><u>SCL</u></span>
| colspan="2" | &nbsp;
 
|-
This property is of type ''Single digital pin'' and can be referenced with the variable name ''cal_i2c1::SCL''.
| width="10%" align="center" | [[File:Fc9-type-10-icon.png]]
 
| width="90%" | Label
Pin used for SCL (clock signal)
|-
 
| colspan="2" | &nbsp;
<span style="font-weight: normal;"><u>SCL Remap Pin</u></span>
|-
 
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''cal_i2c1::SCLPins''.
| width="90%" class="mtx-class-propfolder" | Connection
 
|-
''<span style="color:red;">No additional information</span>''
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Channel
 
|-
<span style="font-weight: normal;"><u>Baud Select</u></span>
| colspan="2" | Channel selection&nbsp;
 
|-
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''cal_i2c1::BAUD_LIST''.
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 
| width="90%" | SDA
Baud rate option selector
|-
 
| colspan="2" | Pin used for SDA (data signal)&nbsp;
<span style="font-weight: normal;"><u>Baud Rate</u></span>
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
This property is of type ''Signed integer'' and can be referenced with the variable name ''cal_i2c1::BAUD''.
| width="90%" | SDA Remap Pin
 
|-
Baud rate to be used
| colspan="2" | &nbsp;
 
|-
<span style="font-weight: normal;"><u>Stop Delay</u></span>
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 
| width="90%" | SCL
This property is of type ''True or false'' and can be referenced with the variable name ''cal_i2c1::StopDel''.
|-
 
| colspan="2" | Pin used for SCL (clock signal)&nbsp;
On older microcontroller devices there is a potential for the I2C hardware channel to lock up if there is not  
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
a 10ms delay between an I2C stop event and the next I2C start event.
| width="90%" | SCL Remap Pin
 
|-
 
| colspan="2" | &nbsp;
 
|-
Most modern microcontrollers will not have a problem so this property can be disabled to speed up the  
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Baud Select
I2C communications.
|-
 
| colspan="2" | Baud rate option selector&nbsp;
<span style="font-weight: normal;"><u>Simulation Type</u></span>
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''SimType''.
| width="90%" | Baud Rate
 
|-
''<span style="color:red;">No additional information</span>''
| colspan="2" | Baud rate to be used&nbsp;
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
 
| width="90%" | Stop Delay
<span style="font-weight: normal;"><u>Scope Traces</u></span>
|-
 
| colspan="2" | On older microcontroller devices there is a potential for the I2C hardware channel to lock up if there is not a 10ms delay between an I2C stop event and the next I2C start event. Most modern microcontrollers will not have a problem so this property can be disabled to speed up the I2C communications. &nbsp;
This property is of type ''True or false'' and can be referenced with the variable name ''cal_i2c1::ScopeTraces''.
|-
 
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
Selects if the component pin connections are automatically generated on the data recorder window or not.
| width="90%" class="mtx-class-propfolder" | Simulation
 
|-
Yes: Automatically add the component pins to a group on the data recorder which will reflect the sim data during simultion.
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
No: Do not show the pin signals on the data recorder window.
| width="90%" | Simulate Comms
 
|-
<span style="font-weight: normal;"><u>Console Data</u></span>
| colspan="2" | &nbsp;
 
|}
This property is of type ''True or false'' and can be referenced with the variable name ''cal_i2c1::ConsoleData''.
 
Selects if the console data is automatically generated or not
 
<span style="font-weight: normal;"><u>Injector</u></span>
 
This property is of type ''Fixed list of ints'' and can be referenced with the variable name ''cal_i2c1::Injector''.
 
''<span style="color:red;">No additional information</span>''

Latest revision as of 14:37, 13 July 2026

Author Matrix TSL
Version 2.0
Category EBM Modules


Gyroscope component

Interface to the L3G4200D three axis digital gyroscope. Panel GUI can be used to simulate incoming data for testing.

Component Source Code

Please click here to download the component source project: FC_Comp_Source_EBM009v1.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_EBM009v1.fcfx

Detailed description

No detailed description exists yet for this component

Examples

Sample program demonstrating the EBM009 Gyroscope Sensor.

The program plots X, Y and Z data onto the LCD screen.

EBM009 Example







Macro reference

GetX

GetX
Returns the previously sampled X axis data 
- INT Return


GetY

GetY
Returns the previously sampled Y axis data 
- INT Return


GetZ

GetZ
Returns the previously sampled Z axis data 
- INT Return


Initialise

Initialise
Initialise the component. Returns 0 if successful 
- BYTE Return


ReadRegister

ReadRegister
Read the data byte at the given address of the device 
- BYTE Reg
address of the register to be read 
- BYTE Return


SampleDevice

SampleDevice
Reads the Axis data from the device. Returns 0 if successful 
- BYTE Return


WriteRegister

WriteRegister
Writes the data byte to the given address of the device. Returns 0 if successful 
- BYTE Reg
address of register to be written with data byte 
- BYTE data
data byte to be written to device register 
- BYTE Return


Property reference

Properties
Output Data Rate
 
Full Scale Selection
Specifies the maximum angular speed which the sensor can measure in degrees per second 
X Axis
 
Y Axis
 
Z Axis
 
Label
 
Connection
Channel
Channel selection 
SDA
Pin used for SDA (data signal) 
SDA Remap Pin
 
SCL
Pin used for SCL (clock signal) 
SCL Remap Pin
 
Baud Select
Baud rate option selector 
Baud Rate
Baud rate to be used 
Stop Delay
On older microcontroller devices there is a potential for the I2C hardware channel to lock up if there is not a 10ms delay between an I2C stop event and the next I2C start event. Most modern microcontrollers will not have a problem so this property can be disabled to speed up the I2C communications.  
Simulation
Simulate Comms