PLC Solutions for Industrial Noise Monitoring and Control
In industrial production, noise control directly relates to employee health and equipment lifespan. This article introduces a noise monitoring and control system solution based on the Siemens S7-1200, achieving fully automated noise monitoring and early warning control.
1. Hardware Configuration Scheme
PLC and Expansion Module Selection
-
• CPU: S7-1214C DC/DC/DC
-
• Analog Input Module: SM1231 4AI
-
• Analog Output Module: SM1232 2AO
-
• Digital Input Module: SM1221 8DI
-
• Digital Output Module: SM1222 8DO
I/O Point Allocation Table
Input Points:
%I0.0 - System Start Button
%I0.1 - System Stop Button
%I0.2 - Alarm Acknowledgment Button
%IW64 - Noise Sensor 1 Data
%IW66 - Noise Sensor 2 Data
%IW68 - Noise Sensor 3 Data
Output Points:
%Q0.0 - System Running Indicator
%Q0.1 - Alarm Indicator
%Q0.2 - Sound and Light Alarm
%QW80 - Soundproof Door Control
Peripheral Device Selection
-
• Noise Sensor: BSWA Sound Level Meter, measuring range 30-130dB
-
• Sound and Light Alarm: LED + Buzzer Combination
-
• Soundproof Door Actuator: Servo Motor Control
-
• Touch Screen: Siemens KTP700 Basic
2. Control Program Design
A. Variable Definition Specification
Global Variable Table (DB1):
NoiseValue[3]: REAL // Noise Value Array
AlarmLimit: REAL // Alarm Threshold
WarningLimit: REAL // Warning Threshold
SystemStatus: INT // System Status
AlarmStatus: BOOL // Alarm Status
B. Program Architecture Design
System Initialization (OB100):
// System Parameter Initialization
AlarmLimit := 85.0; // Alarm Threshold 85 Decibels
WarningLimit := 75.0; // Warning Threshold 75 Decibels
SystemStatus := 0; // System Initial Status
Main Control Program (OB1):
// Noise Data Acquisition and Processing
CALL "NoiseDataAcq"
Input := %IW64
Output := NoiseValue[1]
// Noise Alarm Control
CALL "NoiseAlarmCtrl"
NoiseValue := NoiseValue[1]
AlarmLimit := AlarmLimit
AlarmOut := %Q0.1
C. Function Block Design
Noise Data Acquisition FB (FB1):
FUNCTION_BLOCK "NoiseDataAcq"
VAR_INPUT
Input : WORD; // Sensor Raw Data
END_VAR
VAR_OUTPUT
Output : REAL; // Converted Decibel Value
END_VAR
VAR
TempValue : REAL;
BEGIN
// Data Conversion Formula
TempValue := INT_TO_REAL(WORD_TO_INT(Input));
Output := (TempValue / 27648.0) * 130.0;
END_FUNCTION_BLOCK
D. Data Storage Design
Parameter Configuration Data Block (DB10):
STRUCT
SamplingTime : TIME := T#100MS; // Sampling Cycle
FilterCoef : REAL := 0.8; // Filtering Coefficient
RecordInterval : TIME := T#1H; // Recording Interval
END_STRUCT
3. User Interface Design
Interface Layout
-
• Main Screen: Real-time Noise Curve, Current Value Display
-
• Parameter Settings: Threshold Settings, Sampling Cycle Adjustment
-
• Alarm Records: Alarm History, Acknowledgment Status
-
• Trend Analysis: Daily Report, Weekly Report Generation
4. System Debugging Plan
Step-by-Step Debugging
-
1. I/O Point Testing: Confirm Signals One by One
-
2. Data Acquisition Testing: Verify Data Accuracy
-
3. Control Logic Testing: Check Alarm Trigger
-
4. System Integration Testing: Full Process Function Verification
5. Experience Summary
System Optimization Suggestions
-
1. Use Moving Average Filtering to Eliminate Interference
-
2. Implement Remote Data Upload Functionality
-
3. Increase Predictive Maintenance Features
-
4. Optimize Alarm Strategy to Avoid False Alarms
If you have any questions about the content of this article, feel free to leave a message for discussion. Let’s explore the application and development of industrial automation technology together.