10 KiB
ਰੀਲੇ ਨੂੰ ਕੰਟਰੋਲ ਕਰੋ - ਵਰਚੁਅਲ IoT ਹਾਰਡਵੇਅਰ
ਇਸ ਪਾਠ ਦੇ ਇਸ ਭਾਗ ਵਿੱਚ, ਤੁਸੀਂ ਮਿੱਟੀ ਦੀ ਨਮੀ ਸੈਂਸਰ ਦੇ ਨਾਲ ਆਪਣੇ ਵਰਚੁਅਲ IoT ਡਿਵਾਈਸ ਵਿੱਚ ਇੱਕ ਰੀਲੇ ਸ਼ਾਮਲ ਕਰੋਗੇ ਅਤੇ ਇਸਨੂੰ ਮਿੱਟੀ ਦੀ ਨਮੀ ਦੇ ਪੱਧਰ ਦੇ ਆਧਾਰ 'ਤੇ ਕੰਟਰੋਲ ਕਰੋਗੇ।
ਵਰਚੁਅਲ ਹਾਰਡਵੇਅਰ
ਵਰਚੁਅਲ IoT ਡਿਵਾਈਸ ਇੱਕ ਸਿਮੂਲੇਟ ਕੀਤੇ ਗ੍ਰੋਵ ਰੀਲੇ ਦੀ ਵਰਤੋਂ ਕਰੇਗਾ। ਇਹ ਲੈਬ ਉਸੇ ਤਰ੍ਹਾਂ ਕੰਮ ਕਰੇਗੀ ਜਿਵੇਂ ਰਾਸਪਬੇਰੀ ਪਾਈ ਨਾਲ ਇੱਕ ਫਿਜ਼ਿਕਲ ਗ੍ਰੋਵ ਰੀਲੇ ਦੀ ਵਰਤੋਂ ਕਰਦੇ ਹੋਏ।
ਇੱਕ ਫਿਜ਼ਿਕਲ IoT ਡਿਵਾਈਸ ਵਿੱਚ, ਰੀਲੇ ਆਮ ਤੌਰ 'ਤੇ ਖੁੱਲ੍ਹਾ ਰੀਲੇ ਹੁੰਦਾ ਹੈ (ਇਸਦਾ ਮਤਲਬ ਹੈ ਕਿ ਜਦੋਂ ਰੀਲੇ ਨੂੰ ਕੋਈ ਸਿਗਨਲ ਨਹੀਂ ਭੇਜਿਆ ਜਾਂਦਾ, ਤਦ ਆਉਟਪੁੱਟ ਸਰਕਿਟ ਖੁੱਲ੍ਹਾ ਜਾਂ ਡਿਸਕਨੈਕਟ ਹੁੰਦਾ ਹੈ)। ਇਸ ਤਰ੍ਹਾਂ ਦਾ ਰੀਲੇ 250V ਅਤੇ 10A ਤੱਕ ਦੇ ਆਉਟਪੁੱਟ ਸਰਕਿਟ ਨੂੰ ਸੰਭਾਲ ਸਕਦਾ ਹੈ।
ਰੀਲੇ ਨੂੰ CounterFit ਵਿੱਚ ਸ਼ਾਮਲ ਕਰੋ
ਵਰਚੁਅਲ ਰੀਲੇ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ, ਤੁਹਾਨੂੰ ਇਸਨੂੰ CounterFit ਐਪ ਵਿੱਚ ਸ਼ਾਮਲ ਕਰਨਾ ਪਵੇਗਾ।
ਕੰਮ
ਰੀਲੇ ਨੂੰ CounterFit ਐਪ ਵਿੱਚ ਸ਼ਾਮਲ ਕਰੋ।
-
ਜੇਕਰ ਪਿਛਲੇ ਪਾਠ ਤੋਂ
soil-moisture-sensor
ਪ੍ਰੋਜੈਕਟ VS Code ਵਿੱਚ ਖੁੱਲ੍ਹਾ ਨਹੀਂ ਹੈ, ਤਾਂ ਇਸਨੂੰ ਖੋਲ੍ਹੋ। ਤੁਸੀਂ ਇਸ ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ਕੁਝ ਸ਼ਾਮਲ ਕਰ ਰਹੇ ਹੋ। -
ਯਕੀਨੀ ਬਣਾਓ ਕਿ CounterFit ਵੈੱਬ ਐਪ ਚੱਲ ਰਿਹਾ ਹੈ।
-
ਇੱਕ ਰੀਲੇ ਬਣਾਓ:
-
Actuators ਪੈਨ ਵਿੱਚ Create actuator ਬਾਕਸ ਵਿੱਚ, Actuator type ਡ੍ਰੌਪਡਾਊਨ ਬਾਕਸ ਵਿੱਚੋਂ Relay ਚੁਣੋ।
-
Pin ਨੂੰ 5 'ਤੇ ਸੈੱਟ ਕਰੋ।
-
Add ਬਟਨ ਨੂੰ ਚੁਣੋ ਤਾਂ ਜੋ ਪਿਨ 5 'ਤੇ ਰੀਲੇ ਬਣਾਇਆ ਜਾ ਸਕੇ।
ਰੀਲੇ ਬਣਾਇਆ ਜਾਵੇਗਾ ਅਤੇ ਇਹ ਐਕਚੁਏਟਰਸ ਦੀ ਸੂਚੀ ਵਿੱਚ ਦਿਖਾਈ ਦੇਵੇਗਾ।
-
ਰੀਲੇ ਨੂੰ ਪ੍ਰੋਗਰਾਮ ਕਰੋ
ਹੁਣ ਮਿੱਟੀ ਦੀ ਨਮੀ ਸੈਂਸਰ ਐਪ ਨੂੰ ਵਰਚੁਅਲ ਰੀਲੇ ਦੀ ਵਰਤੋਂ ਕਰਨ ਲਈ ਪ੍ਰੋਗਰਾਮ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।
ਕੰਮ
ਵਰਚੁਅਲ ਡਿਵਾਈਸ ਨੂੰ ਪ੍ਰੋਗਰਾਮ ਕਰੋ।
-
ਜੇਕਰ ਪਿਛਲੇ ਪਾਠ ਤੋਂ
soil-moisture-sensor
ਪ੍ਰੋਜੈਕਟ VS Code ਵਿੱਚ ਖੁੱਲ੍ਹਾ ਨਹੀਂ ਹੈ, ਤਾਂ ਇਸਨੂੰ ਖੋਲ੍ਹੋ। ਤੁਸੀਂ ਇਸ ਪ੍ਰੋਜੈਕਟ ਵਿੱਚ ਕੁਝ ਸ਼ਾਮਲ ਕਰ ਰਹੇ ਹੋ। -
ਮੌਜੂਦਾ ਇੰਪੋਰਟਸ ਦੇ ਹੇਠਾਂ
app.py
ਫਾਈਲ ਵਿੱਚ ਹੇਠਾਂ ਦਿੱਤਾ ਕੋਡ ਸ਼ਾਮਲ ਕਰੋ:from counterfit_shims_grove.grove_relay import GroveRelay
ਇਹ ਕਮਾਂਡ ਗ੍ਰੋਵ ਪਾਇਥਨ ਸ਼ਿਮ ਲਾਇਬ੍ਰੇਰੀਜ਼ ਤੋਂ
GroveRelay
ਨੂੰ ਇੰਪੋਰਟ ਕਰਦੀ ਹੈ ਤਾਂ ਜੋ ਵਰਚੁਅਲ ਗ੍ਰੋਵ ਰੀਲੇ ਨਾਲ ਇੰਟਰੈਕਟ ਕੀਤਾ ਜਾ ਸਕੇ। -
ADC
ਕਲਾਸ ਦੇ ਐਲਾਨ ਦੇ ਹੇਠਾਂ ਹੇਠਾਂ ਦਿੱਤਾ ਕੋਡ ਸ਼ਾਮਲ ਕਰੋ ਤਾਂ ਜੋ ਇੱਕGroveRelay
ਇੰਸਟੈਂਸ ਬਣਾਇਆ ਜਾ ਸਕੇ:relay = GroveRelay(5)
ਇਹ ਪਿਨ 5 ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਇੱਕ ਰੀਲੇ ਬਣਾਉਂਦਾ ਹੈ, ਜਿੱਥੇ ਤੁਸੀਂ ਰੀਲੇ ਨੂੰ ਜੁੜਿਆ ਸੀ।
-
ਜਾਂਚਣ ਲਈ ਕਿ ਰੀਲੇ ਕੰਮ ਕਰ ਰਿਹਾ ਹੈ, ਹੇਠਾਂ ਦਿੱਤਾ ਕੋਡ
while True:
ਲੂਪ ਵਿੱਚ ਸ਼ਾਮਲ ਕਰੋ:relay.on() time.sleep(.5) relay.off()
ਇਹ ਕੋਡ ਰੀਲੇ ਨੂੰ ਚਾਲੂ ਕਰਦਾ ਹੈ, 0.5 ਸਕਿੰਟ ਲਈ ਰੁਕਦਾ ਹੈ, ਅਤੇ ਫਿਰ ਰੀਲੇ ਨੂੰ ਬੰਦ ਕਰਦਾ ਹੈ।
-
ਪਾਇਥਨ ਐਪ ਚਲਾਓ। ਰੀਲੇ ਹਰ 10 ਸਕਿੰਟ ਵਿੱਚ ਚਾਲੂ ਅਤੇ ਬੰਦ ਹੋਵੇਗਾ, ਚਾਲੂ ਅਤੇ ਬੰਦ ਹੋਣ ਦੇ ਵਿਚਕਾਰ ਅੱਧਾ ਸਕਿੰਟ ਦੇਰੀ ਹੋਵੇਗੀ। ਤੁਸੀਂ CounterFit ਐਪ ਵਿੱਚ ਵਰਚੁਅਲ ਰੀਲੇ ਨੂੰ ਚਾਲੂ ਅਤੇ ਬੰਦ ਹੁੰਦਾ ਦੇਖੋਗੇ।
ਮਿੱਟੀ ਦੀ ਨਮੀ ਤੋਂ ਰੀਲੇ ਨੂੰ ਕੰਟਰੋਲ ਕਰੋ
ਹੁਣ ਜਦੋਂ ਰੀਲੇ ਕੰਮ ਕਰ ਰਿਹਾ ਹੈ, ਇਸਨੂੰ ਮਿੱਟੀ ਦੀ ਨਮੀ ਦੇ ਪੜ੍ਹਨ ਦੇ ਜਵਾਬ ਵਿੱਚ ਕੰਟਰੋਲ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ।
ਕੰਮ
ਰੀਲੇ ਨੂੰ ਕੰਟਰੋਲ ਕਰੋ।
-
ਰੀਲੇ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਜੋ 3 ਲਾਈਨਾਂ ਦਾ ਕੋਡ ਤੁਸੀਂ ਸ਼ਾਮਲ ਕੀਤਾ ਸੀ, ਉਹ ਹਟਾਓ। ਇਸ ਦੀ ਥਾਂ ਹੇਠਾਂ ਦਿੱਤਾ ਕੋਡ ਸ਼ਾਮਲ ਕਰੋ:
if soil_moisture > 450: print("Soil Moisture is too low, turning relay on.") relay.on() else: print("Soil Moisture is ok, turning relay off.") relay.off()
ਇਹ ਕੋਡ ਮਿੱਟੀ ਦੀ ਨਮੀ ਸੈਂਸਰ ਤੋਂ ਪੜ੍ਹੇ ਗਏ ਪੱਧਰ ਦੀ ਜਾਂਚ ਕਰਦਾ ਹੈ। ਜੇਕਰ ਇਹ 450 ਤੋਂ ਵੱਧ ਹੈ, ਤਾਂ ਇਹ ਰੀਲੇ ਨੂੰ ਚਾਲੂ ਕਰਦਾ ਹੈ, ਅਤੇ ਜੇਕਰ ਇਹ 450 ਤੋਂ ਘੱਟ ਹੈ, ਤਾਂ ਇਸਨੂੰ ਬੰਦ ਕਰਦਾ ਹੈ।
💁 ਯਾਦ ਰੱਖੋ ਕਿ ਕੈਪੇਸਿਟਿਵ ਮਿੱਟੀ ਦੀ ਨਮੀ ਸੈਂਸਰ ਪੜ੍ਹਦਾ ਹੈ ਕਿ ਜਿੰਨੀ ਘੱਟ ਮਿੱਟੀ ਦੀ ਨਮੀ ਪੜ੍ਹੀ ਜਾਂਦੀ ਹੈ, ਮਿੱਟੀ ਵਿੱਚ ਉਤਨੀ ਹੀ ਜ਼ਿਆਦਾ ਨਮੀ ਹੁੰਦੀ ਹੈ ਅਤੇ ਇਸਦੇ ਉਲਟ।
-
ਪਾਇਥਨ ਐਪ ਚਲਾਓ। ਤੁਸੀਂ ਦੇਖੋਗੇ ਕਿ ਰੀਲੇ ਮਿੱਟੀ ਦੀ ਨਮੀ ਦੇ ਪੱਧਰਾਂ ਦੇ ਅਨੁਸਾਰ ਚਾਲੂ ਜਾਂ ਬੰਦ ਹੁੰਦਾ ਹੈ। ਮਿੱਟੀ ਦੀ ਨਮੀ ਸੈਂਸਰ ਲਈ Value ਜਾਂ Random ਸੈਟਿੰਗਜ਼ ਬਦਲੋ ਤਾਂ ਜੋ ਮੁੱਲ ਬਦਲਦਾ ਹੋਵੇ।
Soil Moisture: 638 Soil Moisture is too low, turning relay on. Soil Moisture: 452 Soil Moisture is too low, turning relay on. Soil Moisture: 347 Soil Moisture is ok, turning relay off.
💁 ਤੁਸੀਂ ਇਹ ਕੋਡ code-relay/virtual-device ਫੋਲਡਰ ਵਿੱਚ ਲੱਭ ਸਕਦੇ ਹੋ।
😀 ਤੁਹਾਡਾ ਵਰਚੁਅਲ ਮਿੱਟੀ ਦੀ ਨਮੀ ਸੈਂਸਰ ਰੀਲੇ ਨੂੰ ਕੰਟਰੋਲ ਕਰਨ ਵਾਲਾ ਪ੍ਰੋਗਰਾਮ ਸਫਲ ਰਿਹਾ!
ਅਸਵੀਕਰਤੀ:
ਇਹ ਦਸਤਾਵੇਜ਼ AI ਅਨੁਵਾਦ ਸੇਵਾ Co-op Translator ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਅਨੁਵਾਦ ਕੀਤਾ ਗਿਆ ਹੈ। ਜਦੋਂ ਕਿ ਅਸੀਂ ਸਹੀ ਹੋਣ ਦੀ ਕੋਸ਼ਿਸ਼ ਕਰਦੇ ਹਾਂ, ਕਿਰਪਾ ਕਰਕੇ ਧਿਆਨ ਦਿਓ ਕਿ ਸਵੈਚਾਲਿਤ ਅਨੁਵਾਦਾਂ ਵਿੱਚ ਗਲਤੀਆਂ ਜਾਂ ਅਸੁਚੱਜੇਪਣ ਹੋ ਸਕਦੇ ਹਨ। ਮੂਲ ਦਸਤਾਵੇਜ਼ ਨੂੰ ਇਸਦੀ ਮੂਲ ਭਾਸ਼ਾ ਵਿੱਚ ਅਧਿਕਾਰਤ ਸਰੋਤ ਮੰਨਿਆ ਜਾਣਾ ਚਾਹੀਦਾ ਹੈ। ਮਹੱਤਵਪੂਰਨ ਜਾਣਕਾਰੀ ਲਈ, ਪੇਸ਼ੇਵਰ ਮਨੁੱਖੀ ਅਨੁਵਾਦ ਦੀ ਸਿਫਾਰਸ਼ ਕੀਤੀ ਜਾਂਦੀ ਹੈ। ਇਸ ਅਨੁਵਾਦ ਦੀ ਵਰਤੋਂ ਤੋਂ ਪੈਦਾ ਹੋਣ ਵਾਲੇ ਕਿਸੇ ਵੀ ਗਲਤਫਹਿਮੀ ਜਾਂ ਗਲਤ ਵਿਆਖਿਆ ਲਈ ਅਸੀਂ ਜ਼ਿੰਮੇਵਾਰ ਨਹੀਂ ਹਾਂ।