Zigbee Network basics and Introduction Seminar

Working of a Zigbee Network:

A Zigbee Network consists of a

  1. Zigbee Coordinator:  It is the root of the network and also acts as a bridge between the other networks as well. Every network consists of one coordinator. Its main functions are to (I) Store Information about concerning networks and routing tables, & (ii) Pretends as a depository for security keys. 
  1. Zigbee Router: It behaves as an intermediate router that is capable of passing data and information to and from other devices namely coordinator or to the end devices. 
  1. Zigbee End device or Reduced Function End Device: Can pass the information to Zigbee coordinator or Zigbee router but could not establish communication with other end device. It utilizes reduced amounts of memory. 
  1. An alarm device is activated to indicate that certain measures are required to take attention.

 Zigbee network can work in any topology like star, Mesh and so on. It also consists of a Full Function Device (FFD) and Reduced Function Device (RFD). The end systems may be RFD’s and it must contain one FFD at least to work as coordinator in a Zigbee network.

In order to reduce or lower power utilization and boost long battery life of the devices, End devices are made to sleep to most of their time and wake up at the time when a communication is required and  get back to sleep mode after the desired function. The cost of the devices and other materials required to establish a network is relatively low as compared to the other wireless sensor devices. 

The framework potentially has the capability to create and form, and work in Mesh networks. For the aim of saving energy the beaconless system will attach to the network only when there is scope for communication and disconnects immediately. The algorithms are built to support low – speed Ad-hoc communication among nodes automatically in a network. Zigbee stack affirm beacon and non-beacon enabled networks. It uses Ad-hoc on Demand Distance Vector Routing Protocol (AODV) an improved version of routing protocol that takes care of transmitting content.

Example: Lights turns off immediately (Sleep) when there is no sense in the area and turns on when it recognizes a sense – saving energy.

As discussed above; Zigbee networks are capable of supporting mesh networks. The nodes are interlinked with other individual nodes to establish transmission from as many paths as possible.  

The routing table takes the responsibility of dynamically updating the routing information which is readily built in the architecture. The concepts of mesh topology and potential towards ad-hoc routing capability configure greater stableness in changing conditions or failure at single nodes.

The nodes cooperate with each other in leveraging or in transmitting the data with the nearby devices which further send them to the end device limiting their power consumption. 

CSMA (Carrier Sense Multiple Access):

There is an assumption that collisions takes place in the signal whenever a device transmits data it wishes to. Zigbee devices are able to find a free sharing channel on itself to avoid interference with other packets. This approach is motivated by CSMA, which does not require any synchronization between sharing devices. It adopts “Listen before you talk” criteria before initiating a call. If a desired channel is often too busy then it creates wait intervals which increases exponentially and randomly to find a clear channel and gives access to the devices prioritizing the waiting intervals of the nodes. Therefore no collision takes place that results in the data packet loss.

The algorithm for collision free access is given below: 

Association process in Zigbee: 

The formation of a network by the devices begins the life of a Zigbee network structure. When a new device joins the existing network it sends requests to the nearby devices to reconfigure routing paths. It is the function of the Zigbee router or the co-ordinator to allow devices to join a network. This process in Zigbee framework is termed as “Association”. The newly joined devices are termed as child nodes.

Zigbee differs from other wireless standards (say Wi-Fi) by allowing hierarchy of associations which router creates more than a one single parent – child relation achieving multiple levels of associations.

Path Diversity in Zigbee: 

Dynamic routing enables the path diversity in Zigbee by using CSMA (Carrier Sense Multiple Access). If interference occurs in a selected path due to reasons like failure in intermediate node, device or link, then an alternative path will chosen by the network among the available nodes for the delivery of the content from coordinator to end device. Therefore transmission of packets takes place even if a failure occurs in one path. This makes it more robust in its deployment. This is to make the communication more reliable. 

Support for Multiple Channels: 

Zigbee supports multiple channels co-exist together without overlapping. Presently, Zigbee is operating unlicensed frequency bands world-wide at the following frequencies. 2.400 GHz-2.48 GHz (16 Non-overlapping Channels), 902 MHz – 928 MHz (10 Channels), & 868.0 MHz – 868.6 MHz (1 Channel) by allowing different modulation schemes.

This paper is written and submitted by sandeep k

DSSS (Direct Sequence Spread Spectrum) Introduction

DSSS (Direct Sequence Spread Spectrum):

In case of interference or collision between the narrow band signals in ISM Spectrum “Spread Spectrum” is used to elevate coexistence for the fair apportioning of the ISM Spectrum. The overlapping may sometimes results in the loss of data or packets. 

Multiple Accesses to a single channel is possible by “CDMA (Code Division Multiple Access)”.

DSSS is the proficiency used by 802.15.4 that applies “Chipping Sequence” produced by a pseudo – random code, which is then transmitted at an uttermost rate named as Chip rate. It has the functionality to directly tone the carrier signal – hence the name “Direct sequence” which is further used to encode the transmitting data.

This paper is written and submitted by sandeep k

Zigbee Architecture and Comparison of Different Wireless Standards

Comparison of Different Wireless Standards: 

The following table can be used to compare the different wireless standards. 

From the table above, it is observed that Zigbee has additional features comparing to the other wireless standards. Hence the detailed functions of the Zigbee and its functioning are discussed below.

The Zigbee’s network in integration with PHY and MAC layer of IEEE 802.15.4 specification provides the following features

  • Reliability in data transfer
  • Minimal power consumption
  • Security at desired levels
  • Low cost and Flexible installation procedure for devices.

The main advantage of Zigbee protocol is support for “co-existence” and “interoperability” to communicate and function with them with interference.

Zigbee Architecture: 

The Zigbee architectural frame work consists of PHY layer and MAC layer that accounts for IEEE specification 802.15.4 to support coexistence. It adopts “DSSS (Direct Sequence Spread Spectrum)” that enables peer – to – peer radio communication. It also validates data rates, Modulation schemes and channelization techniques as specified in the protocol.

Physical Layer (IEEE 802.15.4 PHY) is implicated in exchanging data bits with the physical medium (Say radio) and the layer above it i.e. Data Link Layer (DLL).

Data Link Layer (IEEE 802.15.4 MAC) is responsible for addressing of frames. It maintains a track of outgoing and incoming data packets. It uses MAC frames. It’s main functions are:

  1. Assembling data frames required for transmission.
  2. Decomposing received frames.

Zigbee stack implements Zigbee functionalities like network mapping, routing, and Security measures such as Encryption, Authentication, and Key Mgmt. And, it also acts as mucilage between the application layer and the combined PHY and MAC layers.

The Application level consists of the applications that are required for node function. It converts input into digital format and reconverts Digital data into criteria suitable for output.

The Application layer is defined by two profiles namely, (1) Public Profiles, & (2) Private Profiles.

  1. Public Profiles: For the intention of interoperability.
  2. Private Profiles: Intended for use in closed systems.
This paper is written and submitted by sandeep k

School Website Project Report

An effective e-learning is studied in this research and in general there are different e-learning models and methods in existence and most of them concentrate on different aspects and a typical high school is designed and implementation procedure is discussed in this research. Moodle is an object oriented e-learning system and this can be used to create an automated online education portal with the use of some customized templates.

The main disadvantage with these templates is that, if there is any issues with respect to programming and also if anything need to be updated it is not possible and in this I research I have given a design and implementation procedure to develop an online high school system similar to the Moodle and with this updating the software programmatically is very easy.

Student Module:

As already discussed, this module mainly concentrates on the retrieving of the existing data from the database or just to update the profile information of the student who logged in into the website. The explanation of the functionality of each tab related to Student module can be explained as below.(Screen shots have been provided in the appendix section for this document for better understanding. )

For proceeding into the website as student login with the given credential for a student.

 Home Tab:

When the Student clicks on this tab then he will be redirected to the Homepage.aspx where in which he can just get an idea of what actually this site is meant for. This page is common for both the Student and Administrator.

Profile Tab:

When the student clicks on the profile tab then he will be redirected to the Stu_editprofile.aspx page where in which the student can view his profile, which was created already during registration. If he/she feels that his/her profile should be changed then he is provided with an edit option which will redirect him to the Registration.aspx page from where he can update his existing profile and then submit that to the database of the school. The fields in this page can be explained as below.

Student Name: Displays the Name of the student as per the existing Data in the school Database.

  • Father Name: Displays the Fathers Name of the student as per the existing Data in the school Database.
  • Group: Displays the group of the student as per the existing Data in the school Database.
  • Batch: Displays the Batch of the student as per the existing Data in the school Database.
  • Email ID: Displays the email Id of the student
  • Contact Number: Displays the contact number of the student
  • Address: Displays the contact number of the students as per the school database.

 Events Tab: When the student click on the vents tab of the main menu then he will be redirected to the Stu_viewevents.aspx from which he can view the events that are going to happen in the period he specified. When the student gives the from data and to date with in which he want to view the events scheduled the list of the events that have been scheduled for that particular period will be displayed to student in  the form of a grid mentioning the event details such as Event Name, Contact person for that event provided the student feels interested in participating in any particular event. The fields used in the page will be explained as below.  

  • From Date: Select the from-date of the period in which the student wants to view the events from the calendar control provided.
  • To Date: Select the from-date of the period in which the student wants to view the events from the calendar control provided.

Result:Once all the required Data has been filled by the Student,he should click on the Submit button .Then a Data Grid will be displayed containing all the events present in that particular period

 Quiz Tab: When the student clicks on the quiz tab of the menu then he will be redirected to the Quiz1.aspx where the student will be provided with an option to select the course in which he would like to take the test. Once he selects the course then a list of questions will be appearing in front of him to start the test. Once the student finishes the test and clicks on submit button then he can view his score for the exam written. The fields in this page can be explained as below.

Select Course: Select the course for which the student is interested in taking the test from the list of available courses such as Maths, Science and Social.

Result:Once the student have selected the course in which he want to take the test then alist of questions will appear.After finishing the test the student is supposed to click on Submit button up on which the Result containg the score for that test will be displayed as a message. 

Learning Tab: When the Student clicks on the Learning tab of the main menu then he will be redirected to the Learninghome.aspx where in which he can see all the content that was uploaded for online learning. For each and every course that was uploaded there is a tab provided such as Maths, Science, Social etc. When he clicks on any one of the topics available there then he will be redirected to the corresponding course page.

Finally, when the user (either the admin or the student) clicks on the Logout tab then he will be logged out of the “The High School” website.

In addition to all the above there is one more option in this website which the students who doesn’t have their registrations yet into the “The High School” can use to register themselves into the website. This option was provided in the Default.aspx page as a Hyperlink. When the new student clicks on this hyperlink then he will be redirected to the Registration.aspx where he can fill all the required fields and then get his registrations done.

School Website Project Documentation

School website project documentation covers detailed explanation on modules and detailed explanation of every module are explained in this topic.

The High School website mainly contains the following tabs in the menu whose functionality will be varying depending upon the roles(Admin and Student).

  • Home tab
  • Profile tab
  • Events tab
  • Learn tab
  • Quiz tab
  • Logout tab

Now each and every Tab of the main menu will be redirecting the user to the different pages depending on the role of the logged in user. Here we have asumed that there is only one Administrator in this website and his login credentials are user Id =1 and pwd=”Admin1”.Rest all user IDs are treated as students.So when ever the user logs in with user id 1 then the system exibits the admin module functionality.For all other user IDs the system Exibits the Student module functionality even though the Menu tab remains the same for both the modules.Let us start describiting the difference in the functionality of each tab for Administrator role and Student role.

Administration Module:

In the Administration Module as already discussed all the insertions of data into the high school data base  will be taking place.The explanation of the functionality of each tab related to Admin module is a below(screen shots have been provided in the appendix of this document for better understanding).

Login into the website as an Administrator(means user id =1 and pwd = Admin1).

Home Tab:

When the Administrator clicks on this tab he will be redirected to Homepage.aspx where in which he can see the information like what actaully this website is meant for.This page is common both for the Administrator and the students.

Profile Tab:

When the Admin clicks on the Profile Tab then he will be redirected to the Registration.aspx from where he can register a new student into the high school database.By giving all the inputs Admin then clicks on the Submit button to insert a new student record into the database.The fields of this page are explained as below. 

  • Student Name:Enter the Name of the Student.
  • Father Name:Enter the father name of the registereing student.
  • Group:Select the group from the available  list of groups such as Maths,Science,Social etc.
  • Batch :Enter the year of the course eg:2005
  • Email ID:Enter the email ID of the student
  • Contact No:Enter the Contact number of the Student
  • Address: Enter the Address of the Student.

Reset button is provided to clear all the textboxes that have been filled by the Admin so that the admin can upload one more student.

Result:Once all the Data has been filled by the Admin,he should click on the Submit button .Then a new profile will be inserted into the Database and a Message will be displayed mentioning that the Profile has been created successfully.

 Events Tab:

 When the Admin clicks on the Events Tab then he will be redirected to the EventsCreation.aspx from where he can create a new event into the highschool database.By giving all the inputs Admin then clicks on the Submit button to insert a new event that will happen in future in the school into the high school database.The fields of this page are explained as below .

  • Event Title:Enter the title of the event which you want to get displayed to the student such as “Quiz Competeion for the Maths students”.
  • From Date:Select the From date of the event i.e. the date on which this event is going to start in the school from the calender control which will appear on clicking the calender image  .
  • To Date:Select the To date of the event i.e. the date on which this event is going to end in the school from the calender control which will appear on clicking the calender image  .
  • Event For :Enter the specific group name for whom this event is emant for such as Science students ,for all etc.
  • Contact Person:Enter the contact person name.
  • Contact No:Enter the Contact number of the person in contact.
  • Email Id:Enter the Email ID of the contact person.

Result:Once all the Data has been filled by the Admin,he should click on the Submit button .Then a new Event will be inserted into the Database and a Message will be displayed mentioning that the new Event has been created successfully.

Reset button is provided to clear all the textboxes that have been filled by the Admin so that the admin can upload one more Event.

Quiz Tab:

When the Administrtor clicks on the Quiz Tab then he will be redirected to QuizCreation.aspx page from where he can insert a new question into the database for each course selected by him.Here the Administrator is provided with a Dropdown list to select the course for which he wants the questions to be mapped.After giving all the required information to each and every question the Administrator clicks on Submit button to insert the new question into the Database which will be added to the questions list of a particular Course such as Social,Maths,Science etc. The fields of this page are explained as below .

Select Course: Select the course from the list of courses available in the dropdown list for which you want to map the questions that is going to be created.

  • Question ID:Accepts an interger as a question ID for the the question which is going to be created.Eg Question ID = 1
  • Question:Enter the Actual question which you want to be inserted in the Database for the selected course.
  • Answer 1:Enter the first option of the asnwers tothe question.
  • Answer 2: Enter the second option of the answers to the question given.
  • Answer 3: Enter the third option of the answers to the questions given.
  • Answer 4: Enter the fourth option of the answers to the questions given.
  • Correct Answer: Enter the exact answer for the given question so that that can be used to calculate the result.

Result:Once all the Data has been filled by the Admin,he should click on the Submit button .Then a new Question will be inserted into the Database and a Message will be displayed mentioning that the new Question has been created successfully.

Reset button was provided to clear all the fields that have been filled by the Admin such that he can insert one more Question into the database by selecting the course from the available list of courses.

Learning Tab: When the Admin clicks on the Learning tab the he will be redirected to the Learninghome.aspx where in which he can see all the content that was uploaded for online learning. For each and every course that was uploaded there is a tab provided such as Maths, Science, Social etc.

School Website Database Design

 School Website Database Design:

This website was developed using Microsoft SQL Server 2008 as the backend. The database design contains few tables and store procedure as per the requirement. Few tables designed were as below

School_users : This contains the data related to all the users of the website such as the student name, Fathers name, course, batch, email, contact number, address etc.

Courses: This table contains the course id and course name that have been assumed in our website such as Maths, Science, Social etc.

Questions_list: This table contains the questions and the corresponding answers as well as the course_id to which that question belong.

Events_list: This table contains the complete information related to the events of the school, which has been conducted, or going to be conducted in future in the school.

Instead of having inline queries written in the DAL we have created stored procedures for all the necessary functions to get reusability of the created stored procedures and to maintain perfect coding standards throughout the website. The stored procedures created for this school website can be explained as below.

sp_createEvent :This Stored procedure is used to create a new event i.e. to insert an new event into the high school database by the administrator which is going to happen in future.

sp_getevents :This stored procedure is used to retrive the events that have been scheduled during that period when given the from data and to data by the students.

Getquestions : This Stored procedure is used to retrive the questions from the database depinding upon the course seleted by the student for the quiz.Here the iput is Course ID.

Sp-getprofile:This Stored procedure is used to retrive the pofile of a particular student when he click on the profile on the menu tab in his login.

Updateprofile :This stored procedure is used to update the existing profile of any particular student in the student login when even the student feels to uodate his existing profile.

High School Website Design Project

The “The High School “website is a website developed using Three tier architecture having Data Access Layer termed as DAL,Bisuness Logic layer termed as  BLL,Presentation Layer termed as UI.BLL is also called as Business Access Layer and Presentation Layer is also known as User interface. The layer will be shown to the end user is called as Presentation Layer. Data Access layer contains the functions that will connect to the database to fetch the Data from the database to the website. Business Logic layer contains the logic behind the implementation. In addition to this website was developed is using all the available concepts of dot net coding and html such as Master Pages, User controls, Style sheets etc to present a better and neat web application to the students .Standard Stored procedures have been used to communicate will the Database both to insert data or to get data instead of writing the inline queries which is a bad practice. Menu item has been used in this website which will be redirecting each user to different pages as per the provided access

This website development have been split up into two modules known as

  • Administration Module
  • Student Module

Administration Module Design:

This module was mainly intended to insert or update the data into the school database related to student’s profiles, events, learning topics, quiz questions online exams etc.For this module to be accessed we have created a role in the “The High School” called as Administrator .The Administrator is the one who take cares of the complete website maintenance. We assumed that there will be only one Administrator for this website.

Following are the accessible points for the administrator.

Home: The administrator can view the Home page where in which he can understand what actually this site is meant for.

Profile: Create a new profile and insert it into the data base. For example inserting a student profile into the database such that he can access “The School website”

Events: This page is used to create or insert new event into the high school data base that will occur in future in the school which will be visible to the students from their login.

Quiz: This page is used to insert Quiz questions into the High School Database for each course such that the students can write online examinations and test themselves how far they were able to grab the concepts.

Logout: Used to logout of the application. 

 Student Module Design:

This module was developed for the students to use. This module facilitates the student to register himself into the “The High School” website, View his profile update his profile when felt necessary. He can also study the subject online; participate in some online examinations available in the Website to analyze his stuff. The students can also get their registration done with the help of administrator. Administrator from his login can create the students profile when requested.

Following are the accessible points for the Students.

Home: The student can view the Home page where in which he can understand what actually this site is meant for.

Profile: The students who have registered with the website can view their profiles in their own login. If he feels that his profile should be changed then he can do the same.

Events: This page is used to view the events that are happening or happened in their school when given the from data and to date for the events.

Learn: This page is used for eLearning of the students where they can study any topic that has been dumped into the site and enhance their knowledge.

Quiz: This page is used to write some online examinations for the students and submit to get their results, which will be used to test themselves.

Logout: Used to logout of the application.

In addition to this, we have implemented the Master pages such as menu.Master, Learning.Master, Title. Master etc.

Style sheets have been created and have been referenced in each and every  so as to follow same look and feel throughout the website. 

Each and every page implementation and results will be discussed in the coming chapter known as Implementation and Results.

School Website Project Modules

School website project is implemented in asp.net platform using C# programming language. This project consists of two modules administrator module and student module.

Administrator Module:

The Administrator is the owner of this website who maintains this website. He is user who uses this website for the registration of Students updating all the future events into the websites that should be accessible o the students. Administrator is also responsible for creating online quiz and also to dump the eLearning topics in to the “The High School” website. He is provided with a login user ID and Password with which he will be allowed to browse to through the website. Depending upon the role the website will be redirecting to the corresponding pages. Administrator is the whole and sole responsible person of this website and he is the only one who can insert any data into the database. 

 Student Module:

Second role available in our school website is Student. Student role is the end user role of this “The High School” website. The student can register himself into the “The High School” website. Once the registration have been done he will be provide with a user ID and password with which he can login in to the school website. Here the student can view his profile, update his profile, Learn new concepts, and participate in the existing online exams. Apart from all these he can get updated of the events both academic and curricular activities that have been going on in the school such that he can plan accordingly to participate in those events if interested.

The student is restricted to view his own profile and to update his own profile if felt necessary. View of other students profile is completely prohibited as it may lead to security issues and may disturb the main intention of this website. Insertion of data from student login in strictly prohibited other than creation of his profile i.e. registering himself into the school. He is provided access to all the learning courses as well do not want to restrict his leaning interest to one particular group to which he actually belongs. 

School Website Project Proposal

“The High School” is a School Website Project created for students to have an online interaction with their school activities. This website has been developed using Microsoft Visual studio 2008 .Coding has been done by using C# language of the Dot Net Framework.

The data base server we used for storing data of this website is Microsoft  SQL Server 2008.Since C# is object oriented, simple to implement, modern in look and provides type safety we have opted C# as compared to other languages available in Microsoft dot net frame work. This language is specially meant to develop huge enterprise applications.

This school website is developed using three-tier architecture so as to follow standard coding policies. Website was developed by implementing almost all the available concepts such as master pages, style sheets, layers etc.

As far as the roles of The High School are concerned, there are two roles in this website that uses it. They are as below

  • Administrator
  • Student

Zigbee Wireless Sensor Networks Seminar and Literature Review

Introduction to Zigbee networks:

Zigbee is one of the Architectures / Protocol developed for enhancing the features of wireless sensor networks and it is considered as a major achievement in the development of WSN’s.It is developed to fulfil the goals in wireless sensors that utilizes low power and low cost.  This Protocol is established by Zigbee Alliance, 2006 which based on the IEEE 802.15.4 specification for wireless networks that provides support for co-existence at both PHY (Physical) layer and the MAC sub-layer using with Application and Network layers on top of these layers along with some added network functionalities that enables the bi-directional wireless communication using more cost effective and minimal energy consuming battery powered devices. The protocol is widely employed in many applications particularly in Wireless sensor Networks.

Zigbee networks transmits wireless data securely, and reliable using wireless mesh network architectures for Commercial, Industrial, and also in other Health care, wellness and Fitness applications, and other purposes.

Why Zigbee protocol? 

There are many wireless application protocols specified by IEEE like Bluetooth (802.15.1) and Wi-Fi (802.11b).  Although these topologies work well they have some disadvantages like Low battery life, gives less bandwidth in transmitting the data and are not suitable for low power applications and involves high construction costs of nodes and such devices.

But, Zigbee has no demand for higher data rates and has the flexibility to connect to more nodes (up to 65000 Nodes) to furnish extreme connectivity between small packet devices. The architecture is also simpler and the node costs are comparatively lower than that of a Bluetooth node. One of the interesting features of Zigbee is its ability to support and work in mesh networks. These devices can work for several months or sometimes for years due to its low power output and can operate from 250 feet with data rate as low as 9.6 Kb/s .

This paper is written and submitted by sandeep k