Wireless Network System for Collecting Data
FIELD AND BACKGROUND OF THE INVENTION
The present invention relates to audience participation systems, and more particularly, to wireless audience-polling systems that enable real-time polling of users' attendance and interaction.
It is often desirable to poll an assembled group of people with specific questions and suggested answers thereto. One example may be, a teacher who wishes to collect and compare (in real time) between the answers provided by students in order to confirm the syllabus. Another example may be an executive wanting to examine the consensus of his/her workers with regard to a certain company policy. Typically, voting systems include wireless devices, which enable users to interact with a central unit. The network architecture of such systems is based on star-connection, wherein the central unit controls the data polling from the users' wireless devices.
Such prior art systems are ineffective when polling large number of participants as such systems are not capable of facilitating the simultaneous transmission between the wireless devices and the central unit and consequently, it becomes necessary to overcome problems relating to transmission collision.
It is thus the prime object of the invention to avoid the limitations of the prior art and to provide a system and method of polling and interacting between plurality of wireless devices for the purpose of answering questionnaires, collecting information and or checking attendance.
SUMMERY
The present invention provides a new wireless communication network system for collecting audience selection data. The communication system comprises at least one tree-master device, at least one Pico-relay device, at least one Pico- master device and at least one card Device. The network architecture is characterized by hierarchical organization of local networks interconnected by PicoRelay devices and each controlled by one PicoMaster device, wherein the tree-master controls and manages the network structure and each card device can function as PicoRelay or PicoMaster device according to a predefined replacement lists.
The information flow path within the wireless network is based on the network hierarchical structure, wherein each PicoMaster collects the data from the Card devices of the respective local network and forwards the collected data to the PicoRelay device which is connected to the ancestor local network. Alternatively the TreeMaster or PicoMaster device forward data to respective piconet card device/s and the PicoRelays forwards the data to all respective child local networks.
BRIEF DESCRIPTION OF THE DRAWINGS
These and further features and advantages of the invention will
become more clearly understood in light of the ensuing description of a
preferred embodiment thereof, given by way of example only, with
reference to the accompanying drawings, wherein-
Fig. 1 is a general overview of a possible network structure used in a
classroom.
Fig. 2 is an example of data flow from one of the CardlD slaves up to the
server.
Fig. 3 is an example of data flow from the server down to one of the CardlDs.
Fig. 4 Depicts the tree structure of the New Network.
Fig. 5 Depicts a scenario of re/assigning a new card or a left behind card to the
network.
Fig. 6 Depicts a scenario of an overloaded piconet.
Fig.7 Depicts a scenario of releasing an absent CardlD from the tree structure-
Fig. 8 Depicts a scenario of sending information from a card once a button is
pressed to the PDA.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
The present invention suggests a new network architecture for wireless communication devices, which are used for data polling services. This network architecture is comprised of interconnected groups of wireless devices organized in hierarchical structure enabling data flow between each wireless device and between a main master device.
Unlike prior art network architectures, the data transmitted through the suggested new network (the "New Network") is not centralized, thus enabling efficient polling process and avoiding collisions between transmissions.
The hierarchical structure of the New Network is comprised of local networks, wherein each local network is controlled by a single local master device (TreeMaster). Each local network communicates with at least one other local network using a single relay device (PicoRelay).
According to the preferred embodiment of the present invention, the New Network architecture is implemented as a hierarchical Bluetooth based network communication system.
The invention can be implemented using any network which is comprised of interconnected small local networks, wherein the local network transmissions are differentiated by time slots, frequency, media type or defined areas. Bluetooth refers to a short-range radio technology aimed at simplifying communications among mobile devices and between devices.
A piconet is a network of devices connected in an ad hoc fashion using Bluetooth technology. A piconet can support up to eight devices. When a piconet is formed, one device acts as the master while the others act as slaves for the duration of the piconet connection. All communication within a piconet is done through the Piconet's Master. The piconet' slaves cannot communicate directly with each other. A scatternet is a group of independent piconets that share at least one common Bluetooth based device.
The present invention utilizes network topologies that are comprised of interconnected small-scale networks that (e.g. utilizing Bluetooth technology. Such networks enable hierarchical flow of information between slave and TreeMaster devices within a defined space. The network architecture suggested by the present invention can be deployed in settings where there is a need for ad hoc interaction between people, such as commenting on a sports game in a stadium, or collecting polling information from an audience.
The individuals forming an audience have to be located within a limited range; therefore the invention applies to a group of people gathered in a unified space (e.g.: a classroom, a school, a school district, a conference auditorium, a stadium, a TV show studio, etc' ...).
For simplicity purposes, in order to explain the New Network manner of use and capabilities, an example of its implementation within a school environment will be used throughout the rest of the document.
The present invention provides the capability of keeping track of attendance by identifying each pupil entering the school and/or the classroom. It also provides
an easy way to conduct tests, questionnaires and polls. More over, it enables conducting school wide or school-district wide comparison tests.
Fig. 1 depicts a network structure within a classroom. The network includes the following devices: cards, PDAs, gateways, and a server.
The cards are hand-held devices to be used by pupils for identification and interaction purposes. Each card contains a Bluetooth transceiver, enabling it to communicate wirelessly with other devices. Each card has a unique ID and a set of keys by which answers can be sent from a pupil to a teacher. A card can be implemented as a small foot-print device with keys or by a PDA or similar device. A possible set of keys is:
> A-l
> B-2
> C-3 > D-4
> YES
> NO
> Don't Know
The set can be extended to contain additional keys if needed and can be adapted for a myriad of applications including sports stadium audience pads .
According to an additional feature of the present invention the Cardld may include a display unit and designated modules enabling to receive and transmit text, audio or image messages.
According to another feature of the present invention the Cardld may include sensor interface enabling to sample different signals such as temperature, voltage, PH etc.
The card can send its ID when requested or when establishing a connection to the network; If a user presses one of the Card ID keys, the card sends the ID along with the value of the pressed key.
The PDA (personal digital assistant), which may take the form of a Pocket-PC, a Palm-Pilot or of some other computerized device, which include transceiver, has Bluetooth capabilities or other equivalent wireless network capabilities, and includes designated software to be used by the teacher. The PDA collects the responses and data from the individual cards and presents the relevant information to the teacher. The Software that is installed in the PDA, enables the teacher to conduct or record questions (that can optionally be stored in a library). The PDA contains a list of the class participants and the teacher can generate reports of pupils' attendance, time arrival or polling results.
The gateway has Bluetooth transmission capabilities and LAN capabilities, thus allowing the information flow received from the Bluetooth network to be transmitted to the server and vice versa. The gateway can also substitute the PDA when absent by becoming the master in the main piconet and acting as the TreeMaster. The gateway will optionally contain a small HUB, thus allowing it to connect to other optional devices in the classroom, such as the class computer. Each class will have at least one gateway; large places will possibly require more then one gateway.
The MasterServer collects the responses from all the schools' gateways. It analyzes the information and provides reports on absent pupils, arrival time and on class activities. The MasterServer records information regarding pupils' grades and can optionally send the information to other servers residing in school-district offices, and to governmental education offices. In an event of an overloaded network (a classroom that has too many pupils with cards assigned to one TreeMaster) or of pupils moving from one class to another, the MasterServer can decide to instruct the gateway and PDAs to move a card from one network to another by removing the CardlD from the current TreeMaster and assigning it to a new TreςMaster. The Network architecture suggested by the present invention can be deployed using three distinct configurations: The first configuration contains all four
types of devices described above: cards, PDAs, gateways, and servers. The second possible configuration excludes the gateways and the servers. Such configuration may apply to environments of independent subsystems not requiring central managements and control, (for example TV show audience scenario and presentations).
The third possible configuration includes cards, PDAs and servers, with no direct access to the servers. In this case the server will have the same wireless capabilities as the PDA and the PDA will be able to transfer information to the server only when it becomes physically close to it, or when it is connected directly to the server via a common cable interface like LAN, USB or any other known technology
The New Network comprises the following logical entities: MasterServer,
TreeMaster, PicoMasters, PicoRelays, and CardlDs. While the MasterServer and the Tree Master have unique features, the Pico
Masters, PicoRelays and CardlDs are all mobile devices having common features, which may fulfill different functions as selected or designated by the
TreeMaster. .
In some cases where network devices are positioned at a distance from each other, a single card device can form a Piconet and function as Card device,
PicoMaster and PicoRelay at the same network configuration.
The network suggested by the present invention has a tree structure. Each new network can function as independent network, or work in conjunction with other networks all connected through the MasterServer.
The MasterServer is the main server, which is connected to all Tree Masters by LAN, by a wireless link or by any other way. The MasterServer can receive information regarding the tree structures from the TreeMasters, and can mange the assignment of network devices to a specific tree structure.
The TreeMaster is either a PDA or a gateway. The TreeMaster manages the complete hierarchical piconet communication and acts as the root of the tree. The TreeMaster assigns the rules of information flow between piconets. The TreeMaster can also act as a PicoRelay for other TreeMasters.
The PicoMaster is a device that manages and controls the activities of the Bluetooth Piconet. The PicoMaster preferably should not (although they sometimes do) function as PicoRelay. Information is hierarchically transferred between the TreeMaster (the PDA or the gateway) and the CardlDs. CardsIDs that function as slaves transmit their information to the PicoMaster of the respective piconet. The PicoMaster forwards the information to the PicoRelay which is connected to the adjacent piconet. Hence, the information is passed from one piconet to the next according to the tree hierarchy till the information reaches the root piconet and the TreeMaster.
The PicoRelay is a device that functions as an intermediate between two piconets. Information passing to the PicoRelay is transferred to the relayed piconet in which the PicoRelay acts as a member (i.e. a slave) not a PicoRelay. Information passes between piconets according to rules assigned by the TreeMaster.
A CardlD is an endpoint that is uniquely defined by an ID.
Figure 2 illustrates the information flow between the logical components as described above, from the CardlD to the PDA, gateway and server. The data transmission path starts at the slave CardlD in Piconet 1.2.1.1, which, in turn, transmits information (such as key pressed and ID data) to the PicoMaster. The PicoMaster forwards the information to the PicoRelay. The PicoRelay that functions as an intermediate between Piconet 1.2.1.1 and Piconet 1.2.1 forwards the information to the PicoMaster of Piconet 1.2.1. According to same
procedure, the information is transmitted to the PicoMasters of Piconet 1.1 and Piconet 1, finally arriving to the TreeMaster (the PDA or the gateway). The transmitted information can include time stamps indicating of the transmission time. Such information may be valuable for different applications (e.g. test scenarios checking users response speed).
Figure 3 illustrates the information flow between the logical components as described above, from the server, gateway or PDA to the CardlD. The data transmission path starts at the server that sends information (such as text, image, audio message or other) to the gateway, which in turn, transmits the information to the PicoMaster PDA in Piconet 1. The PicoMaster forwards the infoπnation to the Picorelay in Piconet 1.2. The PicoRelay that functions as the intermediate between Piconet 1. and Piconet 1.2. forwards the information to the PicoRelay of 1.2.1. According to the same procedure the information is transmitted to the PicoMasters of Piconet 1.2.1 and Piconet 1.2.1.1, finally arriving to the CardlD.
Alternatively the data is transmitted from the TreeMaster to the card devices through the hierarchical structure of the network: the data is transmitted from each PicoMaster to all piconet devices and each PicoRelay forwards the transmitted data to all child piconet networks.
The transmitted information can include time stamps indicating of the transmission time. Such information may be valuable for different applications
(e.g. test scenarios checking users response speed).
Fig 4. Depicts the tree structure of the New Network. Each card in the network has a unique CardlD.
Each TreeMaster has an ID (TMID), which is unique for each PDA or gateway.
The TreeMaster controls and manages all the CardlDs, which are part of the tree structure that is defined by the Piconets.
Each PicoMaster has an ID (PicoMasterlD), which is assigned by the TreeMaster and defines the Piconet. All the CardlDs in the Piconet have all the information maintained by the PicoMaster. Thus, when a PicoMaster disappears, another CardlD becomes the PicoMaster, and takes control of the Piconet. The PicoMaster manages the replacement priority list.
CardlDs within each piconet have the information required to become a PicoRelay if required and the TreeMaster is the device that defines which component will act as a PicoRelay and the order in which the relevant PicoRelay will take control. Thus, after a PicoRelay disappears, another PicoRelay (chosen according to pre-defined order), which has visibility to the relayed Piconet, takes control and resumes the connectivity.
The new network Data Structure
The new network include the following data structure:
Each device within the New Network maintains a data structure according to the functionality it is assigned to fulfill.
The MasterServer has a list of all the TreeMasters, for each TreeMaster it keeps a duplication of tree structure. The MasterServer also maintains a list of all the CardlDs. For each CardlD, The Master Server keeps infoπnation of the CardlDs, PicoMasterlD, physical devices that are physically close to the CardlD (such as other CardlDs, and TreeMasterlDs), the PicoRelay it belongs to, its priority number in replacing the PicoMaster, and its priority number in replacing the PicoRelay.
The TreeMaster maintains infoπnation regarding the complete functions of all devices forming the New Network: such information includes a lists of
CardlDs that are grouped together (i.e. classes) at a certain time and day, and a list of all the TreeMaster's CardlDs.
For each CardlD, the information maintained, is of the CardlD's PicoMasterlD, physical devices that are physically close to the CardlD (such as other CardlDs, and TreeMasterlDs), the PicoRelay it is assigned to, two priority numbers, one for replacing the PicoMaster and one for replacing the PicoRelays.
More over, for each PicoMaster the following information is maintained: the list of CardlDs, the primary PicoRelay, the PicoMaster' s replacement priority list, and the PicoRelay' s replacement priority list.
The PicoMaster maintains the data of the TreeMasterlD it belongs to, the list of controlled CardlDs, the primary PicoRelay, the PicoMaster' s replacement priority list, the PicoRelay's replacement priority list, and a list of all PicoMasterlDs in child local networks.
The PicoRelay maintains the data of the TreeMasterlD it belongs to, the PicoMasterlD for which it acts as a PicoRelay, the PicoMasterlD to which it relays information, a list of controlled CardlDs in the relayed Piconet, and a list of all PicoMasterlDs in child local networks.
The CardlDs maintain the data of the TreeMasterlD to which it is assigned, the PicoMasterlD it belongs to, the PicoRelay in the Piconet, its priority in replacing the PicoMaster and its priority in replacing the PicoRelay. The CardlD also maintains data regarding the most recent information it transmitted, including the last key pressed, the designated TreeMasterld, a timestamp, and an acknowledgment.
Network Scenarios
The following is a list that describes the operation of the New Network in different scenarios.
In the scenarios described below, the communication between the PicoMaster and TreeMaster is carried via the chain of Picorelays, which were not included in the scenarios for the sake of clarity.
The process of establishing new connections between devices and group of devices in the network is based on network visibility property. The network visibility property is determined according to strength and quality of signals transmitted between devices and group of devices. (E.g. establishing connection between a certain device to specific Piconet or a TreeMaster).
A scenario in which either a new card arrives to the net or a card becomes an orphan and needs to be reassigned
Fig. 5 Depicts a scenario where either a new card arrives to the net, a card becomes an orphan and needs to be reassigned, alternatively, the card is instructed by the TreeMaster to seek for a new PicoMAster. In this case, the card sends an "I am alive" signal to the network. All the PicoMasters that receive these signals send them to the TreeMaster. The TreeMaster receives the infomiation of all the PicoMasters and CardlDs visible to the Card, and forwards the information to the TreeMaster (which updates the
TreeStructure), requesting to assign a PicoMaster to the new Card. When the TreeMaster has to assign a PicoMaster to a card its main target is to maintain and enhance the connectivity of the tree; therefore the TreeMaster will try to assign the card to the PicoMaster that is least visible to the TreeMaster. If a connection cannot be established between the chosen PicoMaster and the Card, more visible PicoMaster is selected according to the same principles. Once a connection was established between a PicoMaster and a card, the PicoMaster updates the PicoMaster's and PicoRelay's replacement priority lists, and forwards a notification to the card regarding the card's place in the lists.
A Scenario of an overloaded piconet
Fig 6. Depicts a scenario where a piconet is overloaded. In this case, the TreeMaster that maintains the list of the CardlDs of the relevant piconet sends an alert signal to the PicoMaster.
The PicoMaster sends release signals to CardlDs. Once the CardlD receive the signal, it initiates a procedure for assigning to a new PicoMasterlD. Until the CardlD is assigned to a new PicoMaster it remains part of the overloaded piconet.
A Scenario where a CardlD is no longer visible to the network
Fig 7. Depicts a scenario where a CardlD is no longer visible in the network (a lost cardlD). The PicoMaster identifies the lost CardlD and notifies the TreeMaster. The TreeMaster addresses the TreeStructure to delete the CardlD from the Tree.
Infomiation regarding the CardlD will be maintained for a period of time in the TreeStructure before deletion. If the CardlD was a PicoMaster and there is no connection to any of the replacing PicoMasters, the whole correlating branch will be deleted.
A Scenario of sending information from a Card to the TreeMaster
Fig 8. Depicts a scenario where the card's user has pressed a button on the card. Once identifying a keystroke the Card sends the infomiation of the pressed button along with the CardlD to the PicoMaster. The PicoMaster sends the received infoπnation along with the related TreeMasterlD to the TreeMaster. The TreeMaster receives and records this information. The data transmission procedure utilizes a standard acknowledgment procedures for ensuring that the data has reached its destination
A scenario of an arrival of a PDA to a network with an already existing TreeMaster
This kind of a scenario can take place when the apparatus uses a configuration that includes both gateway and PDA devices. For example, such scenario may take place, when students arrive to the classroom before the teacher. In this case, the gateway acts as the teacher's PDA substitute in terms of the network architecture. When the teacher enters the classroom holding his/her PDA device, the network gateway identifies the PDA existence and transfers the relevant TreeStructure information to the PDA, so that the PDA could function as the network's TreeMaster. The PDA sends to the Gateway the list of the CardlDs that should be assigned to it, and a list of all visible Cards. The gateway, currently functioning as the TreeMaster, assigns the CardlDs to the PDA according to the following rules:
■ The gateway sends to the Cards that should join the PDA-TreeMaster the PDA's TreeMasterlD. ■ The highest branch in the TreeMaster' s hierarchy that is visible to the
PDA will be assigned to it as the root of the new TreeStructure together with its branches.
■ CardlDs that are currently not connected to the new TreeMaster and are within a range visible to the PDA, are detached from their current piconets and reassigned individually to the Tree.
■ All orphaned CardlDs start to seek for available and visible piconets within the new TreeMaster.
A Scenario where a TreeMaster disappears from a network with no substitute
This kind of scenario applies to a case where (for example) a teacher leaves a classroom where there is no gateway. In this case, the orphaned PicoMasters starts to look for a TreeMaster while maintaining the hierarchy in the network. When a TreeMaster is found, the PicoMasters are assigned to it. All activities that do not require TreeMaster decision are maintained, activities that do require TreeMaster decision are suspended. CardlDs leaving the tree will not be able to return to it. A picomaster leaving the piconet will be replaced by the next assigned substitute picoMaster according to the replacement priority list. The new PicoMaster will be responsible for the piconet's activities. All orphaned CardlDs start to seek for new piconets in their relevant TreeMasterlD or in another accessible TreeMasterlD. The Picomasters that are in the top of a branch without connection to the TreeMaster, start looking for a new TreeMaster. Additionally, all other devices in the same piconet, also start to look for a TreeMaster connection, so they will be able to become the PicoRelay. After a defined period of time-out, the Piconet disconnects itself from the other relayed piconets to enable them to search for a TreeMaster.
A Scenario where a TreeMaster disappears and there is a substitute
In a case where a TreeMaster disappears and there is a possible replacement
(for instance a teacher left a classroom that does have a gateway), then the replacement should take over as a TreeMaster. The gateway is always the first in the PicoMaster replacement list. In this case, the TreeStructure should be maintained while assigning the PicoMasters to the new TreeMaster.
A scenario where a gateway is identified by a network with an active TreeMaster
In a case where a gateway is identified by an active network that already has a TreeMaster (i.e. a PDA), the PDA adds the new TreeMaster to its
piconet and assigns it a replacement priority. The TreeMaster sends the new visible TreeMaster (the gateway) information of the Tree structure, including a list of all the CardlDs that form a group at a certain time, and a list of all the TreeMaster' s CardlDs. The TreeMaster passes the new TreeMaster the relevant information kept in its TreeStructure for each CardlD and PicoMaster as well.
A scenario where a gateway disappears from a network that has a PDA
In this case the PDA's TreeMaster deletes the missing TreeMaster from the replacement priority list and the piconet list.
A scenario where a PicoMaster disappears
In this case when a PicoMaster disappears the PicoRelays notifies the
TreeMaster of the missing PicoMaster.
The first prioritized replacement takes control as the primary PicoMaster. The new PicoMaster assigns a new PicoMaster's replacement list. The minimal number of devices that can be combined in a piconet is two. Therefore, if the PicoMaster's branch is empty (i.e. it is the only remaining device in a piconet), the piconet is cancelled and the remained PicoMaster should join the relayed piconet as an ordinary CardlD. If the PicoMaster becomes a connection between two piconets by being part of a third piconet, and deleting the piconet will not cause a disconnection between piconets in the network, then the third piconet is redundant. The redundant piconet is canceled and the PicoMaster becomes a PicoRelay between two piconets.
A scenario where a PicoRelay disappears
In this case the first prioritized PicoRelay's replacement takes control as the Primary PicoRelay. The TreeMaster assigns a new PicoRelay's replacement list. If there is no connection to the TreeMaster, the PicoMaster orders all the CardlDs in the net to search for the TreeMaster' s piconets. When such a piconet is found the CardlD that found it becomes the new PicoRelay. If such a piconet is not found, the CardlDs in the piconet are released. The same procedure applies when a relayed piconet disappears.
The order of replacements in the PicoRelay's replacement priority list is based upon the connectivity objective. The main interest is to maintain the connection to the relayed piconet. The CardlD with the highest visibility to the relayed piconet will be the first chosen as a replacement, etc'.
Other Management procedures
The guiding rule in assigning CardlDs to function as PicoRelay or PicoMaster, is to avoid situations in which the CardlD acts as a PicoRelay and PicoMaster at the same time.
While the above description contains many specificities, these should not be construed as limitations on the scope of the invention, but rather as exemplifications of the preferred embodiments. Those skilled in the art will envision other possible variations that are within its scope. Accordingly, the scope of the invention should be determined not by the embodiments illustrated, but by the appended claims and their legal equivalents.