Saturday, December 28, 2024

AI

What is machine vision? Describe the components of machine

Machine vision is a field of artificial intelligence that enables computers to "see" and interpret images or videos from the real world. It involves using computer algorithms to extract meaningful information from visual data, such as objects, patterns, and movements.


Components of Machine Vision:

Image Acquisition: capturing images or videos.

Image Processing: enhance quality, such as removing noise or adjusting contrast.

Feature Extraction: such as edges, corners, or textures.

Object Recognition: This involves identifying and classifying objects within the images.

Motion Analysis: This involves tracking the movement of objects over time.

Decision Making: making decisions based on the information extracted from the images, such as controlling a robot or triggering an alarm.


What is artificial neural network? Then:
a. Discuss how back propagation algorithm is used to train ANN.
b. What is deep learning.

An Artificial Neural Network (ANN) is a computational model inspired by the way biological neural networks work. It consists of layers of interconnected nodes (neurons) that process information in parallel, mimicking the human brain.

a. Back Propagation Algorithm for Training ANN:

  • Initialization: Assign random weights to connections.
  • Forward Propagation: Calculate outputs using input data and activation functions.
  • Error Calculation: Compute the error (difference between expected and actual outputs).
  • Backward Propagation: Adjust weights to minimize the error by calculating gradients using the chain rule.
  • Iteration: Repeat until the model converges to a desired accuracy level.

b. What is Deep Learning? Deep learning is a subset of machine learning that uses ANNs with many layers (deep networks). These layers extract hierarchical features automatically from raw data, making deep learning suitable for tasks like image recognition, speech processing, and natural language understanding.


What is expert system? Explain the major components of expert system.

a computer program that emulates the decision-making ability of a human expert in a specific domain. It uses a knowledge base of rules and facts to solve problems and make decisions.

Components of Expert System:

  1. Knowledge Base: This component stores the domain-specific knowledge, including facts and rules.
  2. Inference Engine: This component uses the knowledge base to reason about problems and make decisions.
  3. User Interface: This component allows users to interact with the expert system, providing input and receiving output.
  4. Explanation System: Provides reasoning for conclusions made by the system.



Differentiate Supervised Learning from Unsupervised Learning.

  • Supervised Learning: Involves training a model on labeled data, where each data point has a corresponding output or target value. The goal is to learn a mapping function that can predict the output for new, unseen data.  Common techniques: Classification, Regression.
  • Unsupervised Learning: Involves training a model on unlabeled data, where the goal is to discover underlying patterns, structures, or relationships within the data. Common techniques: clustering and dimensionality reduction.


  •     What do you mean by Artificial Intelligence? Then:
    a. Define its goals.
    b. What is Weak AI and Strong AI ?
    c. Difference between Natural (Human) Intelligence & Artificial Intelligence.
    d. Define the role of machine intelligence in the human life.

    Artificial Intelligence (AI) is the simulation of human intelligence in machines programmed to think and act like humans.

    a. Goals of AI:

    1. Automate routine tasks.
    2. Enhance decision-making.
    3. Enable machines to learn and adapt.
    4. Improve human-computer interaction.

    b. Weak AI vs Strong AI:

    • Weak AI: Systems designed for specific tasks (e.g., chatbots).
    • Strong AI:  AI capable of general reasoning and problem-solving like humans.

    c. Natural vs Artificial Intelligence:

    Natural Intelligence:Biological brain, Adapts through experience, self-awareness, and emotional intelligence.

    Artificial Intelligence: Machines/computers, Needs training data, 

    d. Role of Machine Intelligence in Human Life:

    Machine intelligence has the potential to improve many aspects of human life, such as:

    • Healthcare: developing new treatments, and providing personalized care.
    • Transportation: Enabling autonomous vehicles and improving traffic flow.
    • Business: Automating tasks, improving customer service, and gaining insights from data.
    • Science: Accelerating research in fields such as medicine, materials science, and climate change.

    So, Machine intelligence helps in:
    1. Automating complex tasks (e.g., surgery).
    2. Enhancing productivity and efficiency.
    3. Providing insights through data analysis.


    6.    What is an intelligent agent? Give short notes about multi-agent systems

    7.    Explain the difference between predictive and descriptive models of data mining.

    8.    Explain the main idea of KNN techniques; give an example of using it in classification. 














    Explain autonomy and adaptivity as key concepts for explaining AI?

    • Autonomy: Ability to operate independently, make decisions, and take actions without human intervention. Example: self-driving cars.
    • Adaptivity: Ability of an AI system to learn from experience and adjust its behavior to improve performance. Example: Recommendation systems, like in Netflix and Amazon.


    Distinguish between realistic and unrealistic AI (science fiction vs. real life)?

    Unrealistic AI (Science Fiction)

    • Sentient AI: AI with self-awareness, and human-like emotions.   
    • Superintelligence: AI that surpasses human intelligence in every aspect.   
    • Mind Uploading: Transferring a human mind into a digital substrate.   
    • AI Taking Over the World: AI seeks to dominate humanity.

    Realistic AI (Real Life)

    • Machine Learning: AI systems that learn from data and improve their performance over time.   
    • Natural Language Processing (NLP): AI that can understand and generate human language.
    • Computer Vision: AI that can interpret and understand visual information from the world.   
    • Robotics: AI-powered robots that can perform tasks in the real world.


    Express the basic philosophical problems related to AI including the implications of the Turing test and Chinese room thought experiment?

    The Turing Test

    Proposed by Alan Turing, the Turing Test is a method of determining whether a machine can have intelligent behavior equivalent to human. If a human cannot tell the difference between the responses of a human and a machine, then the machine is considered to be intelligent.

    Chinese Room Test

    Philosopher John Searle proposed the Chinese Room argument to challenge the idea that a machine can truly understand language. In this thought experiment, a person inside a room receives Chinese characters, follows a set of rules to manipulate them, and produces appropriate responses. While the person can successfully simulate understanding Chinese, they do not actually understand the language.  

    Formulate a real-world problem as a search problem?

    If we need to move from City A to City B, we have many ways and need to search for the best choice in terms of time, effort, cost, or other criteria. 

    Many problems can be framed as search problems, where the goal is to find a sequence of actions that leads from an initial state to a desired goal state.

    Key points:

    • Problem Formulation: Defining the problem, including the initial state, goal state, and the possible actions that can be taken.
    • Search Techniques: Using algorithms to explore the possible solutions and find the optimal path.
    • Static Environments: Problems where the environment doesn't change while the agent is making decisions.


    Formulate a simple game (such as tic-tac-toe) as a game tree?

    To find the next move, AI needs to explore all possible moves and their consequences, helping to make optimal decisions. concept of a game tree helps in representing and analyzing games in AI.

    Which includes:

    • Nodes and Levels: Nodes represent game states, and levels correspond to each player's turn.
    • Root Node: The initial state of the game.
    • Child Nodes: Possible states resulting from a player's move.
    • Game Termination: The tree ends in terminal nodes, representing game-over states (win, loss, or draw).



    Friday, December 20, 2024

    IOT

    الفصل الأول: مشهد إنترنت الأشياء

    1.1 ما هو إنترنت الأشياء؟

    أصبح مصطلح إنترنت الأشياء (IoT) مصطلحًا شائعًا في الأخبار والتسويق، ولكن خلف الضجة الإعلامية، تطورت تقنيات إنترنت الأشياء لتصبح تقنية ذات أهمية كبيرة مع تطبيقات في العديد من المجالات. تعتمد إنترنت الأشياء على تقنيات سابقة مثل الأنظمة المعلوماتية المنتشرة، شبكات المستشعرات، والحوسبة المدمجة.


    أنظمة إنترنت الأشياء هي أنظمة مصممة لتطبيقات محددة.

    غالبًا ما تتكون من مستشعرات وأحيانًا مشغلات، حيث يتمثل الهدف في معالجة الإشارات والبيانات الزمنية.

    التعريفات الممكنة لإنترنت الأشياء:

    أجهزة فيزيائية مزودة بالإنترنت.

    شبكات مستشعرات زمنية حقيقية ناعمة.

    شبكات ديناميكية متطورة للأجهزة المدمجة.

    1.2 التطبيقات

    تستخدم أنظمة إنترنت الأشياء في مجموعة واسعة من التطبيقات:


    أنظمة صناعية: مراقبة العمليات الصناعية وحالة المعدات.

    المباني الذكية: تتبع مواقع الأشخاص وحالة المباني لتقليل التكاليف التشغيلية.

    المدن الذكية: مراقبة حركة المرور ودمج بيانات المباني الذكية.

    الأنظمة الطبية: توصيل أجهزة مراقبة المرضى في المنزل أو في المستشفى.

    أنواع الأنظمة:

    شبكات المستشعرات: لجمع البيانات.

    أنظمة الإنذار: لتحليل البيانات وتوليد التنبيهات.

    أنظمة التحكم: لتحليل البيانات واستخدامها لتشغيل المشغلات.


    1.3 الهندسة

    تركز هندسة إنترنت الأشياء على الأنظمة الموجهة بالأحداث بدلاً من أخذ عينات دورية. تتطلب الأنظمة الموزعة استخدام الحوسبة الطرفية لتقليل استهلاك الطاقة وزيادة الكفاءة.


    1.4 الشبكات اللاسلكية

    تُعد الشبكات اللاسلكية أساسية لأنظمة إنترنت الأشياء. ومع ذلك، فإنها تقدم تحديات مثل استهلاك الطاقة العالي مقارنة بالاتصالات السلكية.


    1.5 الأجهزة

    تتميز أجهزة إنترنت الأشياء ببساطتها، مما يجعلها منخفضة التكلفة بفضل التقدم في تقنيات تصنيع أشباه الموصلات.


    1.6 الأمان والخصوصية

    يمثل الأمان جانبًا أساسيًا في أنظمة إنترنت الأشياء. يواجه الأمان تحديات مثل الأجهزة ذات الميزات الأمنية المحدودة، وتصميم البرمجيات غير الآمن، وكلمات المرور الافتراضية. كما تعد الخصوصية جزءًا لا يتجزأ من الأمان وتتطلب تدابير خاصة على مستوى الأجهزة والتطبيقات والشبكات.


    1.7 الأنظمة الموجهة بالأحداث

    تُعد الأحداث مفهومًا أساسيًا في أنظمة إنترنت الأشياء، حيث يتم التعامل مع الأحداث كمجموعات زمنية وقيمية. يمكن استخدام هذه الأنظمة لتحليل البيانات المجمعة من المستشعرات.


    1.8 هذا الكتاب

    يتناول هذا الكتاب مجموعة من الموضوعات المتعلقة بأنظمة إنترنت الأشياء بالتفصيل:


    الفصل الثاني: هندسة أنظمة إنترنت الأشياء.

    الفصل الثالث: الأجهزة والتصميم.

    الفصل الرابع: تحليل الأنظمة الموجهة بالأحداث.

    الفصل الخامس: التطبيقات الصناعية لإنترنت الأشياء.

    الفصل السادس: الأمان والسلامة.

    الفصل السابع: اختبار أمان أنظمة إنترنت الأشياء.



    الفصل الثاني: هندسة أنظمة إنترنت الأشياء

    2.1 مقدمة

    في هذا الفصل، ندرس هندسة أنظمة إنترنت الأشياء. سنتناول المكونات النموذجية المستخدمة للشبكات وقواعد البيانات وغيرها.


    يوضح الشكل 2.1 تنظيم نظام إنترنت الأشياء:



    plant : يشير إلى النظام الفيزيائي الذي يتفاعل معه نظام إنترنت الأشياء.

    devices : تشكل الاطراف النهائية للشبكة، وقد تتضمن مستشعرات ومشغلات ومعالجات وذاكرة.

    Hubs: توفر الاتصال الأولي بين  devices وبقية الشبكة.

    Fog processors : تنفذ العمليات على مجموعات محلية من  devices  و Hubs لتقليل زمن الانتظار.

    Cloud servers: توفر خدمات حسابية وتخزينية لأنظمة إنترنت الأشياء.

    2.2 مفاهيم البروتوكولات

    تحتاج أنظمة إنترنت الأشياء إلى بروتوكولات تدعم الاتصالات متعددة الخطوات بين المصادر والوجهات. البروتوكولات مثل HTTP والنشر/الاشتراك (Publish/Subscribe) تُستخدم بشكل واسع، حيث يسمح بروتوكول النشر/الاشتراك بفصل أكبر بين العملاء والخوادم.


    2.3 بروتوكولات موجهة لإنترنت الأشياء

    يمكن تصنيف البروتوكولات إلى قسمين رئيسيين:


    مرتبطة بطبقة مادية محددة: مثل بروتوكول Zigbee، الذي يدعم شبكات متشابكة منخفضة الطاقة.

    مستقلة عن الطبقة المادية: مثل MQTT، وهو بروتوكول يعتمد على نموذج النشر/الاشتراك.

    2.4 قواعد البيانات

    تُستخدم قواعد البيانات لتخزين البيانات قصيرة وطويلة الأجل في أنظمة إنترنت الأشياء. يمكن استخدام قواعد بيانات غير مهيكلة (NoSQL) لسهولة النشر، بينما تُستخدم قواعد بيانات متخصصة للبيانات الزمنية لتحسين الأداء.


    2.5 الأساسات الزمنية

    تتطلب العديد من أنظمة إنترنت الأشياء مفهوم الزمن العالمي المتزامن. بروتوكول توقيت الشبكة (NTP) يُستخدم على نطاق واسع لهذا الغرض.


    2.6 الأمان

    يعد الأمان خاصية أساسية لأنظمة إنترنت الأشياء. يشمل الأمان في هذه الأنظمة ميزات متعددة مثل التشفير وتسريع العمليات الحساسة. تُوفر بروتوكولات مثل Bluetooth Low Energy وZigbee ميزات أمان خاصة بها، مثل بروتوكول الإقران الآمن والتشفير.



    الفصل الثالث: أجهزة إنترنت الأشياء

    3.1 مساحة تصميم أجهزة إنترنت الأشياء

    تختلف مساحة تصميم أجهزة إنترنت الأشياء كثيرًا عن تلك الخاصة بالمعالجات المحمولة أو معالجات السحابة. تتطلب الأنظمة المحمولة والسحابية رقاقات كبيرة جدًا. من ناحية أخرى، يجب أن تعمل أجهزة إنترنت الأشياء عند مستويات طاقة منخفضة للغاية، وغالبًا لا تعمل بشكل مستمر. يجب أن تدمج بين المعالجات، والذاكرة، والتخزين، والاتصال، وأجهزة الاستشعار. كما سيتم بيعها بكميات ضخمة تفوق حتى تلك الخاصة بالمعالجات المحمولة، مما يتطلب أسعارًا منخفضة جدًا. لكن سعر الشراء ليس إلا جزءًا واحدًا من نموذج تكلفة جهاز إنترنت الأشياء. إذ ستقود تكلفة الملكية الإجمالية العديد من أسواق إنترنت الأشياء – حيث ستُستخدم هذه الأجهزة لفترات زمنية تمتد لعدة سنوات. وتعتبر تكلفة التثبيت عنصرًا هامًا في اتخاذ قرار الشراء والتركيب. كما سنرى، فإن تكلفة الملكية مرتبطة بشكل مباشر باستهلاك الطاقة.


    أبدت مجتمعات المستشعرات وMEMS (الأنظمة الكهروميكانيكية الدقيقة) اهتمامًا طويلًا بإنترنت الأشياء كتطبيق لدمج المستشعرات والمشغلات. وقد دعا العديد من المعلقين إلى تحقيق عالم يضم تريليون مستشعر. هذا الهدف واقعي للغاية بالنظر إلى القدرات الصناعية الحالية.


    3.2 تكلفة الملكية واستهلاك الطاقة

    تعد تكلفة الملكية الإجمالية مقياسًا رئيسيًا لأجهزة إنترنت الأشياء. تشمل تكلفة أجهزة السيليكون الخاصة بإنترنت الأشياء عدة مكونات: الاستشعار والتشغيل، والحسابات، والشبكات، بالإضافة إلى التغليف. يشمل الجهاز النهائي مصدر طاقة وتغليفًا. ومع ذلك، تعتبر تكلفة التركيب عاملًا كبيرًا في تكلفة الملكية.


    على سبيل المثال، يبلغ متوسط تكلفة تثبيت كابل في مبنى قائم في الولايات المتحدة حوالي 150 دولارًا، مما يجعل تقليل الحاجة إلى التمديدات السلكية أمرًا هامًا.


    3.3 تكلفة كل ترانزستور وحجم الشريحة

    لقد لوحظ أن التكنولوجيا المتقدمة يمكن أن توفر تكلفة فعالة للتصنيع للعديد من المنتجات. ومع ذلك، فإن تقدم التكنولوجيا أدى إلى زيادة تكلفة تصنيع الشرائح بشكل كبير في العقدين الأخيرين.


    3.4 دورة العمل واستهلاك الطاقة

    يتم استخدام نموذج دورة العمل لتحليل أجهزة إنترنت الأشياء، حيث تشير دورة العمل إلى النسبة المئوية للوقت الذي يعمل فيه الجهاز مقارنةً بوقت التوقف.


    3.5 تصميم المنصة

    تحتاج أجهزة إنترنت الأشياء إلى الاحتفاظ بحالتها بين فترات التفعيل لدعم التواصل وتصفية الإشارات. تتطلب بعض تقنيات الذاكرة مثل SRAM الطاقة للحفاظ على حالتها، بينما تتطلب تقنيات أخرى مثل Flash الكتابة في كتل.


    3.6 الملخص

    تفتح أنظمة إنترنت الأشياء آفاقًا جديدة لتصميم الأنظمة الدقيقة جدًا (VLSI). وتتطلب الأنظمة مستويات منخفضة للغاية من الطاقة وتجمع بين عناصر مختلفة بأسعار منخفضة جدًا.



    الفصل الرابع: تحليل الأنظمة الموجهة بالأحداث

    Event-Driven System Analysis:


    4.1 مقدمة

    تُعتبر الأنظمة الموجهة بالأحداث أحد المفاهيم الأساسية لأنظمة إنترنت الأشياء، حيث يتم تصميمها لمعالجة البيانات عند وقوع الأحداث بدلاً من التشغيل المستمر أو أخذ عينات دورية. يساعد هذا النهج في توفير استهلاك الطاقة وتقليل الحمل على الشبكة.


    4.2 العمل السابق

    تستند الأنظمة الموجهة بالأحداث إلى مفاهيم تم تطويرها في مجالات متعددة، مثل المحاكاة الهندسية وتحليل البيانات الزمنية. تمثل الأحداث تغييرات في حالة المتغيرات أو البيانات المجمعة من المستشعرات.


    4.3 مثال محفز

    لتوضيح مفهوم الأنظمة الموجهة بالأحداث، يمكننا النظر إلى تطبيق نموذجي حيث تستجيب الأنظمة للتغيرات البيئية، مثل تحذيرات في الوقت الحقيقي بناءً على بيانات المستشعرات.


    4.4 نموذج شبكة إنترنت الأشياء

    يتكون نموذج الشبكة الموجهة بالأحداث في إنترنت الأشياء من عدة عناصر:


    الأحداث: تمثل تغييرات في الحالة أو القيم.

    الشبكات: تربط بين الأجهزة التي تجمع البيانات أو تستجيب للأحداث.

    الأجهزة والمحاور: توفر الاتصال بين المستشعرات والخوادم.

    الشبكات أحادية المحور ومتعددة المحاور: تدير تدفق الأحداث بناءً على النماذج الشبكية.

    4.5 تحليل أحداث إنترنت الأشياء

    يعد تحليل الأحداث جانبًا مهمًا لفهم سلوك أنظمة إنترنت الأشياء:


    توزيع الأحداث: دراسة كيفية ظهور الأحداث عبر الزمن والمكان.

    النماذج الاحتمالية: استخدام النماذج الإحصائية لتحليل البيانات المتغيرة بشكل عشوائي.

    التفاعل مع البيئة: دراسة كيف تؤثر العوامل البيئية على الأحداث.

    نقل الأحداث: تحليل كيفية انتقال الأحداث عبر الشبكة أو بين الأجهزة.



    الفصل الخامس: إنترنت الأشياء الصناعي

    Industrial Internet of Things

    5.1 مقدمة

    إنترنت الأشياء الصناعي (IIoT) يمثل تطبيقًا لإنترنت الأشياء في البيئات الصناعية. يسعى هذا المجال إلى تحسين العمليات الصناعية وزيادة الكفاءة من خلال الربط بين الأجهزة، المستشعرات، والخوادم.


    يهدف إلى تحسين الإنتاجية، وتقليل التكاليف، وزيادة السلامة.

    يتضمن دمج الشبكات الذكية مع المعدات والأنظمة الصناعية.

    5.2 الثورة الصناعية الرابعة (Industrie 4.0)

    مصطلح "Industrie 4.0" يصف الثورة الصناعية الرابعة، التي تعتمد بشكل أساسي على إنترنت الأشياء الصناعي والتقنيات الرقمية:


    يُركز على أتمتة العمليات، استخدام البيانات الضخمة، وتعزيز الاتصال بين الأنظمة.

    يوفر التكامل بين الأجهزة المادية والعالم الافتراضي.

    5.3 إنترنت الأشياء الصناعي (IIoT)

    إنترنت الأشياء الصناعي يختلف عن إنترنت الأشياء العادي في أنه يركز على:


    عمليات المراقبة والتحكم في البيئات الصناعية.

    استخدام البيانات في الوقت الحقيقي لتحسين الكفاءة.

    التعامل مع متطلبات الأمان والموثوقية العالية.

    5.4 هيكل إنترنت الأشياء الصناعي

    يتكون هيكل إنترنت الأشياء الصناعي من عدة مستويات:


    الأجهزة الطرفية: تشمل المستشعرات والمشغلات.

    المعالجة الطرفية: تنفيذ العمليات القريبة من الأجهزة لتقليل زمن الانتظار.

    الخوادم السحابية: تقديم الخدمات المركزية، مثل التحليلات المتقدمة وتخزين البيانات.

    5.5 التقنيات الأساسية

    تشمل التقنيات الأساسية لإنترنت الأشياء الصناعي:


    الذكاء الاصطناعي: لتحليل البيانات وتوقع النتائج.

    الشبكات اللاسلكية منخفضة الطاقة: مثل Zigbee وLoRa.

    الأمان السيبراني: لحماية الأنظمة من التهديدات.

    5.6 التطبيقات والتحديات

    التطبيقات:

    إدارة الطاقة: تحسين استهلاك الطاقة في المصانع.

    الصيانة التنبؤية: توقع الأعطال قبل حدوثها.

    الأتمتة الصناعية: تحسين العمليات باستخدام الروبوتات الذكية.

    التحديات:

    الأمان: مواجهة الهجمات السيبرانية.

    التكامل: دمج الأنظمة القديمة مع تقنيات إنترنت الأشياء.

    الاستمرارية: ضمان استمرارية العمل في البيئات الصناعية المعقدة.


    الفصل السادس: الأمن والسلامة

    Security and Safety

    6.1 مقدمة

    تعد قضايا الأمن والسلامة من الجوانب الحاسمة في تصميم وتشغيل أنظمة إنترنت الأشياء. حيث يتطلب الدمج بين الأنظمة الفيزيائية والسيبرانية نهجًا موحدًا يعالج الجوانب التالية:


    الأمن: حماية الأنظمة من الهجمات السيبرانية.

    السلامة: ضمان تشغيل الأنظمة بأمان دون التسبب في مخاطر على البشر أو البيئة.

    6.2 أمن الأنظمة

    تعتمد أنظمة إنترنت الأشياء على مجموعة من الأجهزة والشبكات والمكونات البرمجية.

    نقاط الضعف: قد تتعرض الأنظمة لهجمات مثل اعتراض البيانات، أو الهجمات الموجهة ضد الأجهزة.

    المكونات الأمنية: تشمل التشفير، التحقق من الهوية، وتحديثات الأمان الدورية.

    6.3 أمن الشبكات

    تستخدم أنظمة إنترنت الأشياء بروتوكولات اتصال لاسلكية وسلكية، مما يجعلها عرضة للهجمات على الشبكة.

    الإجراءات الوقائية: مثل تشفير الاتصالات، واستخدام بروتوكولات أمان مثل Bluetooth Low Energy.

    6.4 أمن التطبيقات العامة

    يجب أن تكون التطبيقات المستخدمة في أنظمة إنترنت الأشياء مقاومة للهجمات.

    الاختبارات الأمنية: يتم استخدام تقنيات مثل اختبار الاختراق والتقييمات الأمنية لتحليل نقاط الضعف.

    6.5 أمن العمليات وسلامة التطبيقات

    تحتاج الأنظمة التي تتفاعل مع العمليات الفيزيائية إلى ضمان التفاعل الآمن.

    السلامة المدمجة: تشمل تصميم الأنظمة بحيث تكون مقاومة للأخطاء وقادرة على التفاعل بشكل آمن مع البيئة.

    6.6 تطبيقات إنترنت الأشياء الموثوقة والآمنة حسب التصميم

    يشمل التصميم الآمن لأنظمة إنترنت الأشياء ضمان الموثوقية من خلال:

    التحقق من الكود البرمجي.

    تصميم الأنظمة بطريقة تقلل من تأثير الأعطال.

    6.7 المراقبة أثناء التشغيل

    تساعد تقنيات المراقبة أثناء التشغيل في الكشف عن التهديدات المحتملة.

    الأدوات: تشمل أنظمة الكشف عن التسلل (IDS) والمراقبة الزمنية.

    6.8 نهج ARMET

    يُعتبر ARMET نموذجًا أمنيًا مصممًا لتعزيز موثوقية الأنظمة.

    المزايا: تصميم مقاوم للهجمات، حماية ضد الأعطال غير المتوقعة.

    6.9 الخصوصية والاعتمادية

    تعد الخصوصية جانبًا أساسيًا في أنظمة إنترنت الأشياء، حيث يجب حماية البيانات الحساسة للمستخدمين.

    الاعتمادية: تتطلب أن تكون الأنظمة قادرة على العمل دون انقطاع حتى في ظل وجود تحديات.



    الفصل السابع: اختبار أمان أنظمة إنترنت الأشياء

    Security Testing IoT Systems

    7.1 مقدمة

    اختبار الأمان هو عنصر حاسم لضمان أن أنظمة إنترنت الأشياء مقاومة للتهديدات السيبرانية. يهدف هذا النوع من الاختبار إلى الكشف عن نقاط الضعف التي يمكن أن يستغلها المهاجمون.


    7.2 اختبار الفحص العشوائي للأمان (Fuzz Testing)

    يعد الفحص العشوائي (Fuzz Testing) تقنية فعالة للكشف عن الأخطاء والعيوب الأمنية في الأنظمة البرمجية. يتضمن ذلك تقديم مدخلات غير متوقعة أو عشوائية للأنظمة ومراقبة كيفية استجابتها.


    الأنواع:

    الفحص العشوائي الصندوق الأبيض (White-Box Fuzzing): يعتمد على المعرفة الداخلية بالنظام لاختبار نقاط الضعف.

    الفحص العشوائي الصندوق الأسود (Black-Box Fuzzing): يتم دون معرفة مسبقة بالنظام، مما يحاكي السيناريوهات التي قد يواجهها المهاجمون.

    7.3 فحص أنظمة شبكات التحكم الصناعية

    في البيئات الصناعية، تُستخدم بروتوكولات مخصصة للتحكم في المعدات والعمليات.

    يتطلب اختبار الأمان لهذه الأنظمة مراعاة البروتوكولات المحددة المستخدمة مثل Modbus وProfibus.

    7.4 فحص بروتوكول Modbus

    7.4.1 بروتوكول Modbus:

    بروتوكول Modbus يُستخدم على نطاق واسع في أنظمة التحكم الصناعي.

    يوفر اتصالًا بين الأجهزة الصناعية ولكنه يحتوي على نقاط ضعف أمنية بسبب غياب التشفير في النسخ التقليدية.

    7.4.2 أداة فحص Modbus/TCP:

    تم تطوير أدوات فحص محددة لبروتوكول Modbus للكشف عن نقاط الضعف.

    تقوم هذه الأدوات بإرسال حزم بيانات عشوائية أو غير متوقعة إلى النظام لتحليل استجابته.

    Wednesday, December 11, 2024

    PLC

    List types of Controllers?

    • PID
    • Microcontroller: a computer implemented on a single chip, can be programmed, not expensive but sensitive to noise, and can't be used in industrial apps.
    • PLC
    • DCS
    • SCADA



    What are DCS, and DCS components?

    Distributed systems connected by network for communications and monitoring.

    DCS Componets 

    1. Feild Control System
    2. Enginerring Station: for I/O configuration
    3. Opertor station: for monitoring 

    What are SCADA, and SCADA components?





    Highly distributed system used to control geographically scattered assets over thousands of square kilometers. Used to collect data and send alarms.

    SCADA component:

    1. Human Machine Interface (HMI) for monitoring 
    2. Supervisory (computer) system: gathers process data and sends commands to the process.
    3. Remote Terminal Units (RTUs) : converting sensor signals, sending to the supervisory system
    4. Programmable Logic Controller (PLCs) 
    5. Communication infrastructure:  provides connectivity  


    What is meant by PLC?

    A Programmable Logic Controller (PLC) is a digital computer used for control; it replaced traditional relays due to their flexibility and reliability. 


    Draw plc architecture and discuss the function of its components?

    Central Processing Unit (CPU):

    • The "brain" of the PLC.
    • Executes the user program and controls the overall operation.
    • Processes input signals and generates output signals.
    • Manages system memory and communication with other devices.

    Input Modules:

    • Receive signals from sensors, switches, and other input devices.   
    • Convert physical signals (e.g., voltage, current) into digital signals.   
    • Transmit the digital signals to the CPU for processing.

    Output Modules:

    • Receive signals from the CPU.
    • Convert digital signals into physical signals (e.g., voltage, current).
    • Drive actuators, motors, solenoids, and other output devices.   

    Power Supply:

    • Provides the necessary power to the PLC and its components.   
    • Ensures stable operation even in harsh industrial environments.  

    Memory:

    • Stores the user program, system data, and configuration settings.   
    • Types of memory:
      • Program memory: Stores the user-defined program logic.   
      • Data memory: Stores temporary and permanent data.
      • System memory: Stores system configuration and diagnostic information.

    Communication Interfaces:

    • Enable communication with other PLCs, computers, and network devices.
    • Common interfaces:
      • Serial ports (RS-232, RS-485)   
      • Ethernet
      • Fieldbus (PROFIBUS, CANopen)


    Discuss PLC types?
    • Fixed Input/Output: Low cost, does not support extensions.
    • Modular: can expand by including new unit (extension)
    • Rack: expensive; supports 256 input and 256 output.

    Draw the Siemens PLC rack; illustrate the main components and their functions?


    Slot 1: Power Supply
    Slot 2: CPU
    Slot 3: Interface Module: for rack-to-rack communication
    In Any Slots: 
    • Signal Modules: For input/output modules (Digital Input, Digital Output, Analog Input, and analog output)
    • Function Modules (FM): (High speed counter, Temperature control,...)
    • Communication Processor (CP): for the networking communication


    List the category of choosing the industrial PLC?
    1. Memory Size
    2. CPU Speed/Speed of execution
    3. Network capabilities 
    4. Max no. of input
    5. Max no. of output
    6. Type of input (Digital/Analog)
    7. Type of output(Digital/Analog)
    8. Cost
    9. Manufacture 
    10. Vendor 

    List the category of choosing the industrial sensors?
    1. Accuracy
    2. Resolution
    3. Repeatability
    4. Range
    5. Linearity
    6. Response Time
    7. Cost
    8. Environment


    What is PLC programming Languages?

    Concurrent
      1. Ladder Logic (LD)
      2. Function Block Diagram (FBD)
      3. Structured Text (ST)
      4. Instruction List (IL)
    Squential
      1. Squential Function Chart
      2. Flow Charts

    Compare PLC to PC?

    PLC

    PC

    Programmable Logic Control

    Personal Computer

    Optimized for single task

    Optimized for multitasks

    Used in industrial environment for Control tasks

    Used for personal tasks

    Can operate in High temperature

    Can’t operate in High temperature


    Compare PLC to a microcontroller?



    How to Start/Stop DC Motor, AC 1 Phase, AC 3 Phase Motors?
    • DC, One Phase AC motors need relays to start/stop.
    • AC 3 Phase motor needs condactor.



    How to Change Direction for DC Motor, AC 1 Phase, and AC 3 Phase Motors?



    • For a DC motor, just change positive and negative to change the motor direction.
    • For AC 3 Phase: just change the power source between two phases
    • For AC 1 Phase: Make the capacitor in series or in parallel with main coil to change the direction.


    How to Change Speed for DC Motor, AC 1 Phase, and AC 3 Phase Motors?
    • For a DC motor: increase volt and give power as pulses to avoid increasing Ampear (using pulse width modulation)
    • For AC 1/3 Phase: increase AC frquancy. 

    List Timers Types?
    • S-On Delay Timer (S-ODT): Dealy output with TV value
    • S-Off Delay Timer (S-OffDT): Output start directly with input and continues after input with TV value
    • S-Pulse Extent Timer (S-PEXE): when get input signal a pluse with TV widths will out




    Notes:
    • S: Input Signal
    • TV: Time Value ==> S5t#10s
    • Q: Output Signl


    List Counters Types?
    1. S-CU: Counter up with no limits, need comparetor to catch the required value.
    2. S-CD: Counter Down From PV to Zero, needs two SET, One when start and Second when Done.
    3. S-CUD: Counter Up/Down, CU increase CV, CD descrease CV.
    Notes:
    • Q: Give outputs when CV>0
    • CV: Counter Value ==> C#50
    • S: Set CV with PV value
    • R: Reset all to zeros
    • PV: Preset Value





    List Comparators Types (CMP)?
    • Integer: One Word
    • Double: Two Words
    • Float: Two Words

    CMP Operations
    • >
    • >=
    • <
    • <=
    • =
    • !=

    Explain Analog to Digital Converer Module?
    Siemens FC105 used to convert linear analog signal, to give digital output, it needs:

    Inputs:
    - En: Enable input
    - Max input signal, 
    - Min input signal, 
    - Input signal: PIWx (Preferal Input Word, x refers to any address like 0,1,..)
    - BiPolar: if 1 then it accepts positive and negative values; Zero means unipolar.

    Outputs
    - ENO: Enable output
    - Err: Gives 1, or 8 incase of error
    - Out: MDx (Memory Double x) 


    Notes: I refer to input bit and PIW refer to Input Word (32 bit)



    Example

    - When Level Low, Open pump till high level, then start heater till 800c
    - Open Q01 valve to extract the output with temperature 100c - 300 c
    - Q02 gives output with temperature 400c-525c
    - Q03 gives output with temperature 550c-700c