সুচিপত্র:

[ডকার পাই সিরিজ] রাস্পবেরি পাইতে আইওটি নোড (এ) মডিউল কীভাবে ব্যবহার করবেন: 18 টি ধাপ
[ডকার পাই সিরিজ] রাস্পবেরি পাইতে আইওটি নোড (এ) মডিউল কীভাবে ব্যবহার করবেন: 18 টি ধাপ

ভিডিও: [ডকার পাই সিরিজ] রাস্পবেরি পাইতে আইওটি নোড (এ) মডিউল কীভাবে ব্যবহার করবেন: 18 টি ধাপ

ভিডিও: [ডকার পাই সিরিজ] রাস্পবেরি পাইতে আইওটি নোড (এ) মডিউল কীভাবে ব্যবহার করবেন: 18 টি ধাপ
ভিডিও: Publish container images to DockerHub | #CloudNativeNinja PT5 2024, নভেম্বর
Anonim
[ডকার পাই সিরিজ] রাস্পবেরি পাইতে আইওটি নোড (এ) মডিউল কীভাবে ব্যবহার করবেন
[ডকার পাই সিরিজ] রাস্পবেরি পাইতে আইওটি নোড (এ) মডিউল কীভাবে ব্যবহার করবেন

আইওটি নোড (এ) মডিউল কি?

আইওটি নোড (এ) ডকার পাই সিরিজ মডিউলগুলির মধ্যে একটি।

IOT Node (A) = GPS/BDS + GSM + Lora।

I2C সরাসরি লোরা নিয়ন্ত্রণ করে, তথ্য পাঠায় এবং গ্রহণ করে, GSM/GPS/BDS মডিউল SC16IS752 এর মাধ্যমে নিয়ন্ত্রণ করে, মেইনবোর্ডের শুধুমাত্র I2C সমর্থন প্রয়োজন।

রাস্পবেরি পাই এবং অন্যান্য অনুরূপ পণ্য সমর্থন করুন।

সরবরাহ

1x রাস্পবেরি পাই 2B/3B/3B+/4B/3A+/শূন্য/শূন্য W

1x ডকার পাই সিরিজের পণ্য: আইওটি নোড (এ) মডিউল

1x 16GB ক্লাস 10 টিএফ কার্ড

1x 5V/2.5A পাওয়ার সাপ্লাই (Pi 4B এর জন্য 5V@3A)

ধাপ 1: বৈশিষ্ট্য

বৈশিষ্ট্য
বৈশিষ্ট্য
বৈশিষ্ট্য
বৈশিষ্ট্য
বৈশিষ্ট্য
বৈশিষ্ট্য
  • ডকার পাই সিরিজ
  • প্রোগ্রামযোগ্য
  • সরাসরি নিয়ন্ত্রণ করুন (প্রোগ্রামিং ছাড়া)
  • জিপিআইও পিন প্রসারিত করুন
  • জিপিএস/বিডিএস সাপোর্ট
  • জিএসএম সাপোর্ট
  • লোরা সাপোর্ট
  • অন্যান্য স্ট্যাক বোর্ডের সাথে স্ট্যাক করতে পারে
  • মেইনবোর্ড হার্ডওয়্যার থেকে স্বাধীন (I2C সমর্থন প্রয়োজন)

ধাপ 2: ধাপ 1: IoT (A) বোর্ড সম্পর্কে জানুন

ধাপ 1: IoT (A) বোর্ড সম্পর্কে জানুন
ধাপ 1: IoT (A) বোর্ড সম্পর্কে জানুন
ধাপ 1: IoT (A) বোর্ড সম্পর্কে জানুন
ধাপ 1: IoT (A) বোর্ড সম্পর্কে জানুন
ধাপ 1: IoT (A) বোর্ড সম্পর্কে জানুন
ধাপ 1: IoT (A) বোর্ড সম্পর্কে জানুন

আইওটি নোড (এ) ডকার পাই সিরিজ মডিউলগুলির মধ্যে একটি।

IOT Node (A) = GPS/BDS + GSM + Lora।

I2C সরাসরি লোরা নিয়ন্ত্রণ করে, তথ্য প্রেরণ করে এবং গ্রহণ করে, GSM/GPS/BDS মডিউল SC16IS752 এর মাধ্যমে নিয়ন্ত্রণ করে, মূল বোর্ডে শুধুমাত্র I2C সমর্থন প্রয়োজন। রাস্পবেরি পাই এবং অন্যান্য অনুরূপ পণ্য সমর্থন করুন

সুতরাং আপনি তাদের মধ্য থেকে দুটি ব্যবহার করে একটি মধ্যম পরিসরের যোগাযোগ যন্ত্র তৈরি করতে পারেন।

এবং আপনি জিপিএস মডিউল ব্যবহার করে আপনার ডিভাইসের অবস্থান সনাক্ত করতে পারেন।

একটি সিম কার্ড,োকান, এটি এসএমএস বার্তার মাধ্যমে একটি ট্রান্সমিটার স্টেশনে পরিণত হবে।

ধাপ 3: ধাপ 2: এটি কীভাবে একত্রিত করা যায়

ধাপ 2: এটি কীভাবে একত্রিত করা যায়
ধাপ 2: এটি কীভাবে একত্রিত করা যায়
ধাপ 2: এটি কীভাবে একত্রিত করা যায়
ধাপ 2: এটি কীভাবে একত্রিত করা যায়

এটি "HAT" ডিজাইনের কারণে এটি একত্রিত করা খুব সহজ, আপনি কেবল এটি আপনার রাস্পবেরি পাইতে রাখুন এবং এটি GPIO পিনের মাধ্যমে সংযুক্ত করুন, এটি রাস্পবেরি পাইতে "টুপি" এর মতো, যাতে আপনাকে ভর যোগ করতে না হয় তার

ধাপ 4: ধাপ 3: অ্যান্টেনা লাগান

ধাপ 3: অ্যান্টেনা হুক আপ
ধাপ 3: অ্যান্টেনা হুক আপ
ধাপ 3: অ্যান্টেনা হুক আপ
ধাপ 3: অ্যান্টেনা হুক আপ
ধাপ 3: অ্যান্টেনা হুক আপ
ধাপ 3: অ্যান্টেনা হুক আপ

এই IoT (A) মডিউলের জন্য 3 টুকরো অ্যান্টেনা আছে, তার মধ্যে একটি হল লোয়ার মডিউলের জন্য, এটি একটি SMA টাইপ অ্যান্টেনা, এবং এর মধ্যে একটি আপনার জন্য ভালো, এটি একটি বর্গাকার বাক্স অ্যান্টেনা যার IPX পোর্ট রয়েছে। এবং শেষটি সিম মডিউল (A9G) এর জন্য, এটি একটি ক্ষুদ্র অ্যান্টেনা যার একটি IPX পোর্ট রয়েছে। অ্যান্টেনা সংযুক্ত করুন এবং টুপিটি আপনার রাস্পবেরি পাইতে মাউন্ট করুন।

রাস্টবেরি পাইতে আইওট নোড (এ) বোর্ড মাউন্ট করুন

আইপিএক্স পোর্টে হুকআপ জিপিএস অ্যান্টানা এবং লোরা অ্যান্টানা।

  • E1 : GPS-ANTANA-IPX
  • E3 : LoRa-ANTANA-IPX

এসএমএ পোর্টে জিপিআরএস অ্যান্টানা স্ক্রু করে।

ধাপ 5: ধাপ 4: ওএস পরিবেশ এবং সফটওয়্যার কনফিগারেশন

এই ধাপে, আপনাকে সেই কাজগুলি করতে হবে:

1. সর্বশেষ ইমেজ ফাইলটি ডাউনলোড করুন: www.raspberrypi.org/downloads থেকে

2. এটি আনজিপ করুন।

3. ইথার টুলের মাধ্যমে সর্বশেষ চিত্রের সাথে আপনার TF কার্ডটি ফ্ল্যাশ করুন

4. /boot/config.txt ফাইলটি সংশোধন করুন এবং এই অনুচ্ছেদটি যোগ করুন।

dtoverlay = sc16is752-i2c

5. /boot/overlay/sc16is752-i2c.dtbo ফাইলটি এই ফাইলের সাথে প্রতিস্থাপন করে:

wiki.52pi.com/index.php/File:Sc16is752-i2c…

PS: মনে রাখবেন এটি আনজিপ করুন এবং এটি আপনার/boot/overlay/ফোল্ডারে রাখুন এবং পুরানোটিকে প্রতিস্থাপন করুন।

6. আপনার রাস্পবেরি পাই পুনরায় বুট করুন।

ধাপ 6: ধাপ 5: I2C (রাস্পবেরি পাই) কনফিগার করা

ধাপ 5: I2C (রাস্পবেরি পাই) কনফিগার করা
ধাপ 5: I2C (রাস্পবেরি পাই) কনফিগার করা
ধাপ 5: I2C (রাস্পবেরি পাই) কনফিগার করা
ধাপ 5: I2C (রাস্পবেরি পাই) কনফিগার করা
ধাপ 5: I2C (রাস্পবেরি পাই) কনফিগার করা
ধাপ 5: I2C (রাস্পবেরি পাই) কনফিগার করা
ধাপ 5: I2C (রাস্পবেরি পাই) কনফিগার করা
ধাপ 5: I2C (রাস্পবেরি পাই) কনফিগার করা

Sudo raspi-config চালান এবং ARM কোর এবং লিনাক্স কার্নেলের জন্য i2c সাপোর্ট ইনস্টল করার জন্য অনুরোধগুলি অনুসরণ করুন ইন্টারফেসিং বিকল্পগুলিতে যান

ধাপ 7: ধাপ 6: নিবন্ধনের তথ্য সম্পর্কে জানুন

জিপিআরএস বিভাগ

কম বিদ্যুৎ খরচ, স্ট্যান্ডবাই স্লিপ কারেন্ট <1mA2।

850, 900, 1800, 1900MHZ সহ GSM/GPRS চারটি ফ্রিকোয়েন্সি ব্যান্ড সমর্থন করে

জিপিআরএস ক্লাস 10

সাপোর্ট জিপিআরএস ডেটা সার্ভিস, সর্বোচ্চ ডাটা রেট, 85.6Kbps ডাউনলোড করুন, 42.8Kbps আপলোড করুন

স্ট্যান্ডার্ড GSM07.07, 07.05 AT কমান্ড সমর্থন করুন এবং I2C ইন্টারফেস রূপান্তরের মাধ্যমে সিরিয়াল পোর্ট অ্যাক্সেস করুন

AT কমান্ড স্ট্যান্ডার্ড AT এবং TCP/IP কমান্ড পোর্ট সমর্থন করে

জিপিএস বিভাগ সমর্থন বিডিএস/জিপিএস যৌথ অবস্থান

A-GPS, A-BDS সমর্থন করে

সাপোর্ট স্ট্যান্ডার্ড সিম কার্ড

LORA বিভাগ ট্রান্সমিশন দূরত্ব: 500 মিটার (RF পরামিতি: 0x50 @ চায়না সিটি)

FSK, GFSK, MSK, GMSK, LoRaTM এবং OOK মডুলেশন পদ্ধতি সমর্থন করে

আল্ট্রা -হাই রিসিভার সংবেদনশীলতা -141 ডিবিএম হিসাবে কম

প্রস্তাবনা সনাক্তকরণ সমর্থন করুন

সিআরসি সহ প্যাকেট ইঞ্জিন, 256 বাইট পর্যন্ত

LORA ট্রান্সসিভার সূচক

ডকার পাই দ্বারা সহজ TX/RX

ধাপ 8:

A9G মডিউল

A9G মডিউল দুটি সিরিয়াল পোর্ট অফার করে।

যোগাযোগের জন্য I2C UART সেতু ব্যবহার করুন।

সিরিয়াল পোর্ট মডিউলের নাম

  • /dev/ttySC0 GSM
  • /dev/ttySC1 GPS/BDS

রেজিস্টার ম্যাপ

  • ঠিকানা ফাংশন মান নিবন্ধন
  • 0x01 LORA_TX1 লোরা TX বাফার 1 - ব্যবহারকারীর ডেটা
  • 0x02 LORA_TX2 লোরা TX বাফার 2 - ব্যবহারকারীর ডেটা
  • 0x03 LORA_TX3 Lora TX বাফার 3 - ব্যবহারকারীর ডেটা
  • 0x04 LORA_TX4 Lora TX বাফার 4 - ব্যবহারকারীর ডেটা
  • 0x05 LORA_TX5 Lora TX বাফার 5 - ব্যবহারকারীর ডেটা
  • 0x06 LORA_TX6 লোরা TX বাফার 6 - ব্যবহারকারীর ডেটা
  • 0x07 LORA_TX7 Lora TX বাফার 7 - ব্যবহারকারীর ডেটা
  • 0x08 LORA_TX8 Lora TX বাফার 8 - ব্যবহারকারীর ডেটা
  • 0x09 LORA_TX9 লোরা TX বাফার 9 - ব্যবহারকারীর ডেটা
  • 0x0a LORA_TX10 Lora TX বাফার 10 - ব্যবহারকারীর ডেটা
  • 0x0b LORA_TX11 Lora TX বাফার 11 - ব্যবহারকারীর ডেটা
  • 0x0c LORA_TX12 Lora TX বাফার 12 - ব্যবহারকারীর ডেটা
  • 0x0d LORA_TX13 Lora TX বাফার 13 - ব্যবহারকারীর ডেটা
  • 0x0e LORA_TX14 Lora TX বাফার 14 - ব্যবহারকারীর ডেটা
  • 0x0f LORA_TX15 Lora TX বাফার 15 - ব্যবহারকারীর ডেটা
  • 0x10 LORA_TX16 Lora TX বাফার 16 - ব্যবহারকারীর ডেটা
  • 0x11 LORA_RX1 Lora RX বাফার 1 - ব্যবহারকারীর ডেটা
  • 0x12 LORA_RX2 Lora RX বাফার 2 - ব্যবহারকারীর ডেটা
  • 0x13 LORA_RX3 Lora RX বাফার 3 - ব্যবহারকারীর ডেটা
  • 0x14 LORA_RX4 Lora RX বাফার 4 - ব্যবহারকারীর ডেটা
  • 0x15 LORA_RX5 Lora RX বাফার 5 - ব্যবহারকারীর ডেটা
  • 0x16 LORA_RX6 Lora RX বাফার 6 - ব্যবহারকারীর ডেটা
  • 0x17 LORA_RX7 Lora RX বাফার 7 - ব্যবহারকারীর ডেটা
  • 0x18 LORA_RX8 Lora RX বাফার 8 - ব্যবহারকারীর ডেটা
  • 0x19 LORA_RX9 লোরা RX বাফার 9 - ব্যবহারকারীর ডেটা
  • 0x1a LORA_RX10 Lora RX বাফার 10 - ব্যবহারকারীর ডেটা
  • 0x1b LORA_RX11 Lora RX বাফার 11 - ব্যবহারকারীর ডেটা
  • 0x1c LORA_RX12 Lora RX বাফার 12 - ব্যবহারকারীর ডেটা
  • 0x1d LORA_RX13 Lora RX বাফার 13 - ব্যবহারকারীর ডেটা
  • 0x1e LORA_RX14 Lora RX বাফার 14 - ব্যবহারকারীর ডেটা
  • 0x1f LORA_RX15 Lora RX বাফার 15 - ব্যবহারকারীর ডেটা
  • 0x20 LORA_RX16 Lora RX বাফার 16 - ব্যবহারকারীর ডেটা
  • 0x01 - 0x10 শুধুমাত্র লিখুন।
  • 0x11 - 0x20 শুধুমাত্র পড়ার জন্য।

ধাপ 9: নির্দেশাবলী:

নির্দেশাবলী
নির্দেশাবলী

L_SET (শুধুমাত্র লিখুন)

  • 0x22 থেকে LORA মডিউলে প্যারামিটার সেট করতে 1 লিখুন।
  • 0 লিখুন প্রভাব নেই

G_RESET (শুধুমাত্র লিখুন)

  • A9G মডিউল রিসেট করতে 1 লিখুন
  • 0 লিখুন প্রভাব নেই

L_RXNE (পড়ুন এবং লিখুন)

  • 1 কারণ ত্রুটি লিখুন
  • সাফ করতে 0 লিখুন
  • পড়ুন 1 মানে ডেটা পাওয়া গেছে, দয়া করে রেজিস্টার 0x11 - 0x20 থেকে ডেটা পান।
  • 0 পড়ুন মানে এখন কোন ডেটা পাওয়া যায় না।

L_SET (শুধুমাত্র লিখুন)

  • ডেটা পাঠাতে 1 লিখুন, পাঠানোর আগে 0x01 - 0x10 রেজিস্টারে ডেটা পূরণ করুন।
  • 0 লিখুন প্রভাব নেই

ধাপ 10: জিপিএসডি (রাস্পবেরি পাই) দিয়ে জিপিএস মডিউল কীভাবে ব্যবহার করবেন

জিপিএসডি (রাস্পবেরি পাই) দিয়ে কীভাবে জিপিএস মডিউল ব্যবহার করবেন
জিপিএসডি (রাস্পবেরি পাই) দিয়ে কীভাবে জিপিএস মডিউল ব্যবহার করবেন
জিপিএসডি (রাস্পবেরি পাই) দিয়ে কীভাবে জিপিএস মডিউল ব্যবহার করবেন
জিপিএসডি (রাস্পবেরি পাই) দিয়ে কীভাবে জিপিএস মডিউল ব্যবহার করবেন
জিপিএসডি (রাস্পবেরি পাই) দিয়ে কীভাবে জিপিএস মডিউল ব্যবহার করবেন
জিপিএসডি (রাস্পবেরি পাই) দিয়ে কীভাবে জিপিএস মডিউল ব্যবহার করবেন

জিপিএসডি (রাস্পবেরি পাই) সহ জিপিএস মডিউল কীভাবে ব্যবহার করবেন

প্রথমে, /boot/overlays/sc16is752-i2c.dtbo প্রতিস্থাপন করুন এবং নিশ্চিত করুন যে I2C সঠিকভাবে কাজ করছে।

  • Sc16is752-i2c.dtbo প্রতিস্থাপন করুন
  • I2C কনফিগার করা হচ্ছে
  • জিপিএসডি সরঞ্জাম ইনস্টল করুন।

একটি টার্মিনাল খুলুন এবং এই কমান্ডটি টাইপ করুন:

sudo apt জিপিএসডি জিপিএসডি-ক্লায়েন্ট ইনস্টল করুন

/Etc/default/gpsd ফাইলটি সংশোধন করুন এবং নিম্নলিখিত প্যারামিটার যুক্ত করুন:

  • ডিভাইস = "/dev/ttySC1"
  • GPSD_OPTIONS = "-F /var/run/gpsd.sock"

জিপিআরএস মডিউল পুনরায় সেট করতে i2cset -y 1 0x16 0x23 0x40 কমান্ড লিখুন।

ওপেন জিপিএসের জন্য পাইথন স্ক্রিপ্ট:

import serialimport os import time # জিপিএসডি পরিষেবা পুনরায় চালু করুন। os.system ("sudo systemctl restart gpsd.socket") # Serial port ser = serial. Serial ('/dev/ttySC0, 115200) i = 0 যদি ser.isOpen == মিথ্যা: ser.open () চেষ্টা করুন: মুদ্রণ করুন ("জিপিএস চালু করুন …") যখন সত্য: ser.write (str.encode ("AT+GPS = 1 / r")) size = ser.in ওয়েটিং () যদি সাইজ হয়! = 0: ticks = time.time () response = ser.read (size) gps = str (response, encoding = "utf -8") if (gps.find ("OK")! = -1): os.system ("sudo cgps -s") প্রস্থান করুন () অন্য: i = i + 1 মুদ্রণ ("অপেক্ষারত GPS সক্রিয় করুন, যদি সময় অনেক বেশি থাকে, দয়া করে বাইরে পরীক্ষা করুন:" + str (i)) ser.flushInput () time.sleep (1) কীবোর্ড ব্যতীত: ser.flushInput () ser.close ()

এটি সংরক্ষণ করুন এবং এটি চালান:

পাইথন 3 GPS.py

ধাপ 11: সি (রাস্পবেরি পাই) দিয়ে কীভাবে জিপিএস মডিউল ব্যবহার করবেন

জিপিএসডি সরঞ্জাম ইনস্টল করুন।

sudo apt-get libgps-dev ইনস্টল করুন

সোর্স কোড তৈরি করুন এবং এর নাম দিন "gps.c"

#অন্তর্ভুক্ত #অন্তর্ভুক্ত #অন্তর্ভুক্ত

#অন্তর্ভুক্ত

#অন্তর্ভুক্ত

int প্রধান ()

{int rc; স্ট্রাক্ট টাইমভ্যাল টিভি; struct gps_data_t gps_data; যদি ((rc = gps_open ("localhost", "2947", & gps_data)) == -1) {printf ("code: %d, reason: %s / n", rc, gps_errstr (rc)); EXIT_FAILURE ফেরত দিন; } gps_stream (& gps_data, WATCH_ENABLE | WATCH_JSON, NULL);

যখন (1)

{ / * ডেটা পাওয়ার জন্য 2 সেকেন্ড অপেক্ষা করুন জিপিএস ডেটা। কোড: %d, কারণ: %s / n ", rc, gps_errstr (rc)); } অন্যথায় { /* GPS রিসিভার থেকে ডেটা প্রদর্শন করুন। */ যদি ((gps_data.status == STATUS_FIX) && (gps_data.fix.mode == MODE_2D || gps_data.fix.mode == MODE_3D) &&!.longitude)) { /* gettimeofday (& tv, NULL); সম্পাদনা করুন: tv.tv_sec আসলে টাইমস্ট্যাম্প নয়! */

printf ("অক্ষাংশ: %f, দ্রাঘিমাংশ: %f, গতি: %f, টাইমস্ট্যাম্প: %lf / n", gps_data.fix.latitude, gps_data.fix.longitude, gps_data.fix.speed, gps_data.fix.time);

// সম্পাদনা করুন: tv.tv_sec এর পরিবর্তে gps_data.fix.time} অন্য {printf ("কোন GPS ডেটা উপলব্ধ নেই; n"); }}} ঘুম (3); } / * যখন আপনার কাজ শেষ হয়ে যাবে … * / gps_stream (& gps_data, WATCH_DISABLE, NULL); gps_close (& gps_data); EXIT_SUCCESS ফেরত দিন; }

ধাপ 12: এটি কম্পাইল করুন।

এটি কম্পাইল করুন।
এটি কম্পাইল করুন।

কম্পাইল!

gcc gps.c -lm -lgps -o জিপিএস

এক্সিকিউট ইট!

./জিপিএস

ধাপ 13: কিভাবে পাইথন (রাস্পবেরি পাই) দিয়ে জিপিএস মডিউল ব্যবহার করবেন

পাইথনের সাথে জিপিএস মডিউল কীভাবে ব্যবহার করবেন (রাস্পবেরি পাই)
পাইথনের সাথে জিপিএস মডিউল কীভাবে ব্যবহার করবেন (রাস্পবেরি পাই)

নিম্নলিখিত কোডটি পাইথন 3 ব্যবহার করে কার্যকর করার সুপারিশ করা হয়েছে এবং জিপিএসডি-পাই 3 লাইব্রেরি এবং জিপিএস 2 ডি/3 ডি ফিক্স ইনস্টল করুন:

জিপিএসডি আমদানি করুন

# স্থানীয় জিপিএসডি -তে সংযোগ করুন

gpsd.connect ()

# জিপিএস অবস্থান পান

প্যাকেট = gpsd.get_current ()

# উপলব্ধ ডেটার জন্য GpsResponse এর ইনলাইন ডক্স দেখুন

মুদ্রণ (প্যাকেট অবস্থান ())

ধাপ 14: কিভাবে PPPd (রাস্পবেরি পাই) দিয়ে GSM মডিউল ব্যবহার করবেন

কিভাবে PPPd (রাস্পবেরি পাই) দিয়ে GSM মডিউল ব্যবহার করবেন
কিভাবে PPPd (রাস্পবেরি পাই) দিয়ে GSM মডিউল ব্যবহার করবেন
কিভাবে PPPd (রাস্পবেরি পাই) দিয়ে GSM মডিউল ব্যবহার করবেন
কিভাবে PPPd (রাস্পবেরি পাই) দিয়ে GSM মডিউল ব্যবহার করবেন
কিভাবে PPPd (রাস্পবেরি পাই) দিয়ে GSM মডিউল ব্যবহার করবেন
কিভাবে PPPd (রাস্পবেরি পাই) দিয়ে GSM মডিউল ব্যবহার করবেন

ক) প্রথমে, /boot/overlays/sc16is752-i2c.dtbo প্রতিস্থাপন করুন এবং নিশ্চিত করুন যে I2C সঠিকভাবে কাজ করছে।

  • Sc16is752-i2c.dtbo প্রতিস্থাপন করুন
  • I2C কনফিগার করা হচ্ছে

খ) জিপিআরএস মডিউল পুনরায় সেট করতে i2cset -y 1 0x16 0x23 0x40 কমান্ড লিখুন।

কমান্ডটি চালানোর পরে, আপনাকে একটু অপেক্ষা করতে হবে, প্রায় 10 সেকেন্ড

আপনি রিসেট করতে নিম্নলিখিত পদ্ধতিটিও ব্যবহার করতে পারেন।

C) কমান্ড দিন

sudo apt ppp ইনস্টল করুন

পিপিপি সরঞ্জাম ইনস্টল করতে।

D)/etc/ppp/peers/provider/etc/ppp/peers/gprs এ কপি করুন

ঙ)/etc/ppp/peers/gprs পরিবর্তন করুন

  • লাইন 10: ব্যবহারকারীর জন্য আপনার পরিষেবা প্রদানকারীর সাথে পরামর্শ করুন (উদাহরণ: cmnet)।
  • লাইন 15: অনুগ্রহ করে apn এর জন্য আপনার পরিষেবা প্রদানকারীর সাথে পরামর্শ করুন (উদাহরণ: cmnet)।
  • লাইন 18 - লাইন 24: প্রস্তাবিত সেটিং

F)/etc/chatscripts/gprs পরিবর্তন করুন (লাইন 34 থেকে লাইন 35 পরিবর্তন করুন, ডায়ালআউট নম্বর *99#হতে পারে না)

G) ডায়াল আপ করার জন্য sudo pppd call gprs কমান্ড দিন।

H) আপনার ISP থেকে আপনার ppp কনফিগ চেক করুন।

I) কমান্ড পিং -I ppp0 8.8.8.8 আপনার নেটওয়ার্ক পরীক্ষা করুন (যদি ইন্টারনেট পাওয়া যায় এবং রুট টেবিল সঠিক থাকে)

জে) দয়া করে জিএসএম সিগন্যাল ভাল রাখুন, অন্যথায় নিম্নলিখিতগুলি ঘটবে।

ধাপ 15: কিভাবে আমার জিএসএম মডিউল (রাস্পবেরি পাই) নির্ণয় করা যায়

কিভাবে আমার জিএসএম মডিউল (রাস্পবেরি পাই) নির্ণয় করা যায়
কিভাবে আমার জিএসএম মডিউল (রাস্পবেরি পাই) নির্ণয় করা যায়
কিভাবে আমার জিএসএম মডিউল (রাস্পবেরি পাই) নির্ণয় করা যায়
কিভাবে আমার জিএসএম মডিউল (রাস্পবেরি পাই) নির্ণয় করা যায়
কিভাবে আমার জিএসএম মডিউল (রাস্পবেরি পাই) নির্ণয় করা যায়
কিভাবে আমার জিএসএম মডিউল (রাস্পবেরি পাই) নির্ণয় করা যায়
কিভাবে আমার জিএসএম মডিউল (রাস্পবেরি পাই) নির্ণয় করা যায়
কিভাবে আমার জিএসএম মডিউল (রাস্পবেরি পাই) নির্ণয় করা যায়

নিম্নলিখিত কোডটি পাইথন 3 ব্যবহার করে কার্যকর করার এবং smbus লাইব্রেরি ইনস্টল করার সুপারিশ করা হয়েছে:

import serialimport time import smbus import operator import os

মুদ্রণ ("আরম্ভ করার জন্য অপেক্ষা করা হচ্ছে …")

বাস = smbus. SMBus (1)

bus.write_byte_data (0x16, 0x23, 0x40)

ser = serial. Serial ('/dev/ttySC0', 115200)

যদি ser.isOpen == মিথ্যা হয়:

ser.open () try: print ('-'*60) print ("A9G GPRS মডিউল চালু করা।") print ("GSM connecting …") time.sleep (3) i = 0 while true: ser.write (str.encode ("AT+CCID / r")) size = ser.inWaiting () if size! = 0: ticks = time.time () response = ser.read (size) ccid = str (response, encoding = "utf -8 ") মুদ্রণ (ccid) অন্য: i = i + 1 ser.flushInput () time.sleep (1) কীবোর্ড ব্যতীত বিরতি: ser.close ()

বাস্তবায়নের ফলাফলের উপর ভিত্তি করে টেস্ট স্ক্রিপ্ট এক্সিকিউট করুন, আমরা GSM মডিউল নির্ণয় করতে পারি উদাহরণস্বরূপ, নিম্নলিখিত রিটার্ন, CME ERROR 53 ত্রুটি আমাদের বলে পাওয়ার ভাল নয়। সিএমই কোড = জিএসএম সরঞ্জাম সম্পর্কিত ত্রুটি

অবশ্যই, স্ক্রিপ্টটির একটি রিসেট ফাংশন রয়েছে। যদি আপনি CCID সঠিকভাবে প্রদর্শন করতে পারেন, রিসেট সম্পূর্ণ।

ধাপ 16: কিভাবে C (রাস্পবেরি পাই) দিয়ে Lora TX & RX ব্যবহার করবেন

নিম্নলিখিত কোডটি পাইথন 3 ব্যবহার করে কার্যকর করার এবং smbus লাইব্রেরি ইনস্টল করার পরামর্শ দেওয়া হচ্ছে।

এটি দুটি আইওটি নোড (এ) এর মধ্যে স্থানান্তর করতে হবে। নিজে পাঠানো বিষয়বস্তু নিজেই গ্রহণ করা যাবে না। এটি কার্যকর করার জন্য একটি py স্ক্রিপ্ট হিসাবে সংরক্ষণ করুন।

কিভাবে পাঠাবেন: 0x01 - 0x10 রেজিস্টারে ডেটা পূরণ করার পর, ডেটা পাঠানো শুরু করতে L_TX বিট সেট করুন।

আমদানি সময়

বাস = smbus. SMBus (1)

চেষ্টা করুন:

data_list = [170, 85, 165, 90] # নিবন্ধন করতে তথ্য লিখুন এবং তারপর তথ্য পাঠানো হবে। রেঞ্জের ইনডেক্সের জন্য (1, len (data_list) + 1): bus.write_byte_data (0x16, index, data_list [index - 1]) প্রিন্ট ("LORA %d register to %d register %d data" %(index, data_list [সূচী - 1])) bus.write_byte_data (0x16, 0x23, 0x01) কীবোর্ড ব্যতীত: sys.exit ()

কিভাবে প্রেরণ পাঠাবেন: L_RXNE বিট চেক করুন, যদি সেট করা হয়, নতুন ডেটা এসেছে, এই পতাকাটি অবশ্যই ম্যানুয়ালি ক্লিয়ার হতে হবে।

আমদানি সময়

বাস = smbus. SMBus (1)

recv_data =

চেষ্টা করুন:

যদি bus.read_byte_data (0x16, 0x23) এবং 0x02: # ম্যানুয়ালি ক্লিয়ার L_RXNE bus.write_byte_data (0x16, 0x23, 0x00) register_list = [0x11, 0x12, 0x13, 0x14] register_list) + 0x11): recv_data.append (bus.read_byte_data (0x16, register_list [index - 0x11]))

মুদ্রণ ("প্রাপ্ত তথ্য:")

মুদ্রণ (recv_data) অন্য: মুদ্রণ ("এখনও কোন তথ্য প্রাপ্ত হয়নি Key") কীবোর্ড ব্যতীত: sys.exit ()

ধাপ 17: I2C ব্যান্ডউইথের বিশেষ বিবরণ

I2C প্রোটোকলের কারণে I2C গতির সীমা 400kHz, তাই একক ডিভাইস কার্যকরী ব্যান্ডউইথ 320kbps এর চেয়ে কম, মাল্টি ডিভাইস কার্যকরী ব্যান্ডউইথ 160kbps এর চেয়ে কম। I2C UART ব্রিজের গতির সীমা 115200bps। একই সময়ে কাজ করুন, I2C ব্যান্ডউইথ অপর্যাপ্ত, কারণ 115.2kbps * 2 = 230.4kbps, তাই কিছু ডেটা ওভারফ্লো হয়ে যাবে। GPS এবং GSM কমিউনিকেশনের বড রেট কমানো কমিউনিকেশন ব্যান্ডউইথের ঘাটতি উন্নত করতে পারে। অতিরিক্ত I2C ব্যান্ডউইথ সাধারণত এ, নেটওয়ার্ক ডেটার গতি ধীর, তাই GSM ব্যান্ডউইথ পূর্ণ নয়, তাই কোন ওভারফ্লো সমস্যা নেই।

ধাপ 18: সমাপ্ত

আশা করি আপনারা এটা পছন্দ করবেন এবং বানাবেন।

আপনি এখানে পেতে পারেন:

আমাজন

রাত্রি : Https: //www.amazon.co.uk/dp/B07TD595VS? Ref = myi_title_dp IoT Node (A) amazon.co.uk/dp/B07TZD8B61 বরফ টাওয়ার :

প্রস্তাবিত: