Defined in File Ifc4.h
IfcSensor: public Ifc4::IfcDistributionControlElement¶
A sensor is a device that measures a physical quantity and converts it into a signal which can be read by an observer or by an instrument.
HISTORY New entity in IFC2x4
Type Use Definition IfcSensor defines the occurrence of any sensor; common information about sensor types is handled by IfcSensorType. The IfcSensorType (if present) may establish the common type name, usage (predefined type), properties, materials, ports, composition, assignments, and representations. The IfcSensorType is attached using the IfcRelDefinesByType objectified relationship and is accessible by the IsTypedBy inverse attribute. If the IfcSensorType has ports or aggregated elements, such objects are reflected at the IfcSensor occurrence using the IfcRelDefinesByObject relationship. Figure 179 illustrates sensor type use. Figure 179 — Sensor type use
Property Use Definition The property sets relating to this entity are defined by IfcPropertySet and attached by the IfcRelDefinesByProperties relationship. They are accessible by the IsDefinedBy inverse attribute. Property sets may also be specified at the IfcSensorType, defining the common property data for all occurrences of the same type. They are then accessible by the IsTypedBy inverse attribute pointing to IfcSensorType.HasPropertySets. If both are given, then the properties directly defined at IfcSensor override the properties defined at IfcSensorType. Refer to the documentation at the supertype IfcDistributionControlElement and ancestors for inherited property set definitions. The following property set definitions are applicable to this entity: (All Types)
Pset_SensorPHistory (PSET_PERFORMANCEDRIVEN) Pset_SensorTypeCommon (PSET_TYPEDRIVENOVERRIDE)
Quantity Use Definition The quantities relating to this entity are defined by IfcElementQuantity and attached by the IfcRelDefinesByProperties relationship. They are accessible by the IsDefinedBy inverse attribute. The following base quantities are defined and shall be exchanged with the IfcElementQuantity.Name = ‘BaseQuantities’. Other quantities, being subjected to local standard of measurement, may be defined with another string value assigned to Name. In this case a valid value for MethodOfMeasurement shall be provided.
Material Use Definition The material of the IfcSensor is defined by IfcMaterialConstituentSet or as a fallback by IfcMaterial, and attached by the RelatingMaterial attribute on the IfcRelAssociatesMaterial relationship. It is accessible by the HasAssociations inverse attribute. Material information can also be given at the IfcSensorType, defining the common attribute data for all occurrences of the same type. The following keywords for IfcMaterialConstituentSet.MaterialConstituents[n].Name shall be used:
Casing: Material from which the casing is constructed.
Connection Use Definition The IfcSensor may be connected to other objects as follows using the indicated relationship:
IfcDistributionFlowElement (IfcRelFlowControlElements): Sensors may be connected to a flow element for which an aspect of the fluid or flow is measured. IfcElement (IfcRelConnectsElements): Sensors may be attached to the exterior of an element.
Port Use Definition The distribution ports relating to the IfcSensor are defined by IfcDistributionPort and attached by the IfcRelConnectsPortToElement relationship. If the sensor occurrence is defined by IfcSensorType, then the port occurrences must reflect those defined at the IfcSensorType using the IfcRelDefinesByObject relationship. Ports are specific to the IfcSensor PredefinedType as follows indicated by the IfcDistributionPort Name, PredefinedType, and FlowDirection:
Output (SIGNAL, SOURCE): Transmits signal.
Figure 180 illustrates sensor port use. Figure 180 — Sensor port use
Whether the optional attribute PredefinedType is defined for this IfcSensor.
IfcSensor(std::string v1_GlobalId, ::Ifc4::IfcOwnerHistory *v2_OwnerHistory, boost::optional<std::string> v3_Name, boost::optional<std::string> v4_Description, boost::optional<std::string> v5_ObjectType, ::Ifc4::IfcObjectPlacement *v6_ObjectPlacement, ::Ifc4::IfcProductRepresentation *v7_Representation, boost::optional<std::string> v8_Tag, boost::optional<::Ifc4::IfcSensorTypeEnum::Value> v9_PredefinedType)¶