1. Field of the Invention
The invention relates to wireless networking, and particularly to a system and method for remotely monitoring and controlling an access point including an intelligent uninterruptible power supply.
2. Description of the Related Art
A wireless network includes backbone of access points that are RF connected. One or more of these access points ultimately connect to a gateway, which connects the wireless network to another network such as the Internet. Customer premise equipment (CPEs) connect to the wireless network by RF connecting to an access point. In some systems, access points are resident at customer premise location. Each access point includes its own power supply for powering the electronics, RF card and antenna located there.
Internet service providers (ISPs) utilize existing infrastructure that are leased from POTS (“plain old telephone companies”) or RBOCS (regional bell operating companies) over the public Switched Telephone Network (PSTN). These existing infrastructures tend to include twisted pair or co-axial cables of the telephone and cable companies, respectively. Thus independent ISPs do not own, build nor maintain these portions of the network that they use to provide Internet service to customers, rather they lease them in their entirety.
Alternatively, a wireless network company (WISP) that maintains its own access points including power supplies, electronics and antennas does not suffer from having to lease bandwidth or construct and maintain its own hardwired system. However, in exchange for those advantages, the wireless network typically is designed, the infrastructure constructed and the equipment maintained by the WISP.
In the past, a power supply including, e.g., a DC battery that is charged by an AC source through an AC power connection and an AC/DC converter, would simply supply power to the access point as a sole coupling to the antenna and supporting electronics resident at the access point. The only way to know whether the access point and associated power supply equipment was operating properly with this conventional system was to witness the symptom locally at the customer's or similar installation site. That is, previously, the way to find out whether power had been lost was to physically inspect the site, or receive a customer service call. It is desired to be able to know when a particular problem with the power supply or access point is about to manifest itself, so that preemptive actions can minimize network disruptions or even prevent them in advance.
One solution would be to have a monitoring program operating at a gateway that is configured for determining whether an access point is operational or not. Even having a tool such as this, if the access point is determined to be non-operational, then a physical inspection of the site would generally still be needed to reveal the problem. The problem might be a data problem, an RF problem or a power problem. Among potential data problems are software glitches, viruses or worms affecting the programming, memory crashes, etc. RF problems can include physical obstructions between antennas, or attenuation, degradation and/or other interference problems. Power problems for the access point equipment might involve a failure to receive adequate power from the power supply. A service person responsible for the repair would normally first have to diagnose a range of problems at the site. This can be a time consuming and costly effort given the myriad of possible problems. Only upon properly diagnosing the problem, or going through a series of universal steps designed to solve any of multiple common problems, could the service person effect the proper repair and get the access point back into operational mode. It is desired to have a system that permits remote monitoring, and management of access points and power supplies and power cycle control of access points to reduce or prevent access point downtime and/or repair costs.
An access point of a wireless Internet service provider (WISP) network is provided in accordance with a first aspect of the invention. The WISP system includes a supervisory control and data acquisition (SCADA) system. The access point includes at least one antenna, supporting electronics, and further includes programming instruction modules and associated power supply unit. Program modules are resident at gateways, access points and power supply units that permit intercommunication and subsequent transmission of wireless signals to be received and transmitted along a backbone of the wireless network. The access point program module that is resident at the access point communicates with the power supply module. The access point module program acts as liaison between the gateway central control console of the WISP network and the power supply module allowing commands to be issued to the power supply unit and status variables retrieved from the power supply unit. The gateway central console, access point module and power supply unit communicate to maintain the access point and power supply unit in an operating mode within the network by identifying power supply or access point problems, or both, and preventing or reducing unplanned power supply disruptions and access point failures. The access point module manages the power supply unit and in return the power supply unit can initiate an access point shutdown or power cycle on the loss of an access point heart beat.
The power supply unit may process the commands relayed to it from the access point module program that initiated from the gateway central console. The power supply program further generates and senses internal events and measured variables and includes the ability to trigger a power cycling of the access point when the access point module is determined to not be operating properly or requires testing. The power supply unit may further be configured to process requests for status variables from the access point module, which in turn can be stored in the access point volatile memory.
The access point may further include volatile and non-volatile memory modules. A file system resident at the access point is contained within volatile addressable memory that allows for the storage of command and status files. Communication from the access point to the power supply module program may include automated commands and status requests. The access point command file may further include commands to the power supply unit such as status requests, firmware updates, combined EEPROM and Flash program updates, Flash program alone updates, heartbeat disable, battery date update, Mcu reset, or access point power cycle request or combinations thereof. The access point status file may be further configured to include storage of power supply unit status variables such as status, input/output and various voltage levels, load and battery current values, fuse, box access alarm, temperature, battery charge level, reset event counter, reset clock, firmware serial number or firmware filename, or combinations thereof. Resident in the access point non-volatile memory may be a program that generates a heart beat signal. The power supply program further can be configured to listen to the access point and upon detecting a loss of this signal in a programming routine, such as including a Pre-amble, assume that the access point has malfunctioned and that a power cycle sequence should be initiated.
A power supply of an access point of a wireless internet service provider (WISP) network is provided in accordance with a further aspect of the invention. The WISP network includes a supervisory control and data acquisition (SCADA) system. The access point further includes at least one antenna, supporting electronics and an access point programming instruction module. The power supply includes a power supply programming instruction module resident at the power supply for communicating with the access point module. Commands relayed to the access point module from the central control console that is resident at the gateway of the WISP network are processed. The power supply module further performs status sensing and logic programming configured to trigger access point power cycling when the access point equipment is determined to not be operating properly.
Processing an access point localized heart beat routine that facilitates the communicating with the access point module of the status sensing and communicating routine may also be performed by the power supply module. The gateway central console may initiate a power supply power cycling routine or Mcu reset via the access point command file, or both. When an expected heart beat signal is not detected by the power supply module then a power cycling of the access point would be initiated by that power supply module. The power supply module may also execute a battery test routine that checks and stores a battery voltage level periodically.
A gateway central control console of a wireless internet service provider (WISP) network is provided in accordance with a further aspect of the invention. The network includes a supervisory control and data acquisition (SCADA) system for monitoring and controlling a plurality of access points each including at least one antenna, a power supply, supporting electronics and access point program modules and power supply program modules. The gateway may include a network-connected workstation and centralized console enabling command line interface with the distributed network of access points and power supplies, including programming or configuration or protocol implementation for communicating commands to and receiving status between the access point and power supply modules. The intercommunication fabric is preferably provided via a standard messaging or transfer protocol such as HTTP or RPC or variant, with an interface at the gateway and access points that are configured to facilitate control of and status determination of access point and power supply operation. Communication is preferably established via protocols such as TCP/IP and enable the transmission commands and associated arguments between the access point web clients and server. Each web client preferably has a set of modules or plug-ins that are implemented based on the parameters and execute to provide the selected command and status functionality. The access point module communicates with the power supply module to automatically implement status requests in one or more localized routines. In this way, both remote centralized gateway control and monitoring is achieved via communication protocol plug-ins at the access point and local control of the access point is governed via the power supply console, along with the automatic status indication accumulation initiated by the access point. Thus in addition to this functionality it combines to allow for the efficient management of network traffic, which avoids greatly an increase in the network traffic overhead component.
The commands communicated to the access point by the gateway console may include a status request that initiates a local sub-routine at the access point resulting in the writing to a status file that is accessible and allows reporting and graphing of operational variables and alerts. The commands communicated to the access point by the gateway console may also result in one or more programming instruction update commands being initiated, such as power supply module firmware update commands. The action requests communicated to the access point by the gateway console may include an initiation of the power cycling command and/or an power supply programming reset command via the access point command file, or both. The access point programming may comprise the power supply interface programming plus gateway central control console interface programming.
A supervisory control and data acquisition (SCADA) method is also provided for monitoring and controlling from a centralized gateway workstation console a plurality of access points each including at least one antenna, a power supply, supporting electronics and access point programming and power supply programming instruction modules. The method includes running an access point program module that is resident at the access point. Centralized access point control is exercised including communicating commands to and receiving status from the access point program module. The access point program module communicates with the power supply program module to automatically implement the commands from the gateway console via the access point program module in one or more localized routines, thereby enabling centralized console control while avoiding greatly increased network traffic.
A status request command may be communicated that initiates a localized sub-routine at the access point resulting in an updating of a status file that is accessible at the gateway console or by virtue of the monitoring protocol plug-in resident at the access point. One or more programming instruction update commands may also be communicated, such as power supply module programming update commands. An automatic power cycling command may also be communicated to the power supply module via the access point command file, and/or a power supply programming reset command, or both, may be communicated via the access point. The method may also include communicating a status request command to the access point, receiving a power supply status, and communicating to the access point a power cycling command, or power supply programming reset command, or combinations thereof.
A method of operating an access point of a wireless Internet service provider (WISP) network is further provided in accordance with another aspect of the invention. The network includes a supervisory control and data acquisition (SCADA) system. The access point includes at least one antenna, a power supply and supporting electronics, as well as power supply and access point programming instruction modules. The method includes energizing a power supply for the access point permitting wireless signals to be received and transmitted including running a power supply programming module resident at the power supply, and running an access point programming module resident at the access point. Commands are communicated via the access point command file to the power supply programming module that are relayed from a console that is resident at a gateway of the WISP network. The method also includes communicating commands to the power supply module via the access point module based on status signals from the power supply module for maintaining the access point in an operating mode within the network by limiting unplanned power supply disruptions.
An automatic power cycling may be triggered when the access point equipment is determined to not be operating properly. A power supply programming reset routine, may also be initiated from the access point module. An access point pre-amble signal may be generated that serves as a heart-beat to prevent a power cycling command from being triggered as long as the heart beat signal is observed. That is, a power cycling command may be triggered when the heart beat is not observed. The commands from the access point module program may include a status request command, a calibration command, one or more programming instruction updating commands, a heart beat function override command, a power cycling command or an access point programming or a power supply programming reset command, or combinations thereof.
A method of operating a power supply of an access point of a wireless internet service provider (WISP) network is further provided in accordance with another aspect of the invention. The network includes a supervisory control and data acquisition (SCADA) system. The access point further includes at least one antenna, supporting electronics and an access point programming module. The power supply includes a power supply programming module resident at the power supply. The method includes communicating with the access point programming module to process commands relayed to the access point programming module by console interface that is resident at the gateway of the WISP network. A power supply status is sensed and communication between the power supply module and the access point module is performed for triggering an automatic power cycling routine or a power supply programming reset routine, or both, or other access point equipment is determined to not be operating properly.
The method may also include processing an access point local heart beat routine that facilitates the communicating between the access point modules and sensing by the power supply module. A power cycling routine may be communicated when an expected heart beat signal is not received from the access point module. The power supply module may also include executing a battery test routine including checking and storing a battery voltage level periodically, or processing a power cycling command, or a power supply programming reset command, or combinations thereof.
One or more processor readable memory storage devices are also provided having processor readable code embodied thereon. The processor readable code programs one or more processes to perform any of the methods described above.
a schematically illustrates a monitoring module plug-in including a protocol stack for a SCADA system for power supply monitoring and control in a wireless network in accordance with a preferred embodiment.
b illustrates an exemplary processing flow for the protocol stack of the SCADA system of
a is a flow diagram illustrating data acquisition and processing at an access point of a wireless network in accordance with a preferred embodiment.
b shows exemplary contents of the gateway main program command file of
c shows exemplary contents of a power supply module status file and/or the status file of
a and 12b illustrate burn EEPROM and burn Flash sub-routines of the data acquisition and processing at the access point.
a is flow diagram illustrating data acquisition and processing at a power supply of an access point of a wireless network in accordance with a preferred embodiment.
b illustrates a set of gateway main program commands that may be implemented by data acquisition and processing at the power supply.
What follows is a cite list of references each of which is, in addition to that which is described as background and the invention summary, hereby incorporated by reference into the detailed description of the preferred embodiments below, as disclosing alternative embodiments of elements or features of the preferred embodiments not otherwise set forth in detail below. A single one or a combination of two or more of these references may be consulted to obtain a variation of the preferred embodiments described in the detailed description herein:
U.S. Pat. Nos. 5,463,671, 5,574,775, 5,648,969, 5,661,723, 5,778,116, 5,787,080, 5,822,324, 5,867,485, 5,907,062, 5,936,949, 5,960,344, 5,970,062, 5,983,068, 6,009,096, 6,014,546, 6,049,593, 6,069,885, 6,154,461, 6,198,728, 6,215,779, 6,249,516, 6,259,898, 6,272,120, 6,314,163, 6,323,980, 6,405,058, 6,452,915, 6,496,105, 6,512,755, 6,560,213, 6,578,085, 6,591,084, 6,640,100, 6,665,536 and 6,711,512; and
United States published patent applications nos. 2003/0185169, 2002/0152303, 2002/0032799, 2002/0018456, 2002/0018455, 2002/0015402, 2002/0015397, 2001/0055298, and 2001/0045914.
Multiple access points AP are shown in
The power supply IUPS includes a battery that provides regulated DC voltage to the access point AP so that signals may be sent and received from its one or more antennas, preferably including both an omni-directional antenna and a directional antenna, and so that local and remote SCADA sub-routines may be run. Power is supplied for recharging the battery from a 110V AC supply. The AC voltage is transformed prior to the circuit board for supplying the circuit board with DC voltage. The AC/DC converter is shown in
In an alternative embodiment, solar power may be acquired using photovoltaic cells, solar panels or the like, either instead of or in conjunction with using AC power (e.g., for an emergency cell phone station). If solar power is used, then the solar power would be converted to Vin and the components of the power supply including the battery would be preferably otherwise the same as those shown in
The circuit board is shown in
The access point flash card programming module facilitates communication between itself, the IUPS and the central console monitoring protocol resident at the network gateway in multiple ways. The IUPS CHmon programming module listens for a heartbeat provided by the access point flash card programming module. The access point heartbeat is a timed sequence of ASCII characters that are communicated from the flash card to the Mcu resident programming module. When this digital circuit senses the existence of the heart beat, it interprets the status of the access point to be normal. When the digital circuit does not sense the existence of the heart beat, and the status is thereby determined to be varied from normal to an invalid state or to not be operating properly, then it may initiate an automatic Mcu reset and/or a complete power cycling of the associated access point. The Mcu initiated power cycling via solid state switching results in a hard or cold rebooting of the access point and the resident operating system. The Mcu initiated reset is performed when it is sufficient to rectify the access point malfunction or other programming instruction-based problem. The IUPS circuitry and Mcu module performs functionality including clock, serial communication, heat beat monitoring, IUPS physical parameter and/or variable sensing, event recognition and/or monitoring, calculations, local status indication and local measured parameter storage. Also the access point programming module issues commands and requests to the IUPS programming module and in return receives and/or reads output status results and stores them in the access point status file. PmonD reads from the access point command file and writes these commands to the IUPS programming module. Conversely it also reads the status variables from the IUPS and writes these status values to the access point status file. The IUPS digital circuitry also provides local status indication via a number of LEDs. The digital circuitry of the circuit board of the power supply is illustrated in electrical schematic form at
Another function performed by the circuitry of the power supply IUPS is to facilitate the charging of the battery by the input DC voltage Vin. The battery charging circuitry is schematically illustrated at
Another function performed by the circuitry of the power supply IUPS is to regulate the DC voltage that is provided to the functional access point electronics. Any of a variety of conventional voltage regulator designs or techniques may be used, even though one example of such a circuit is provided at
a schematically illustrates a protocol stack for a SCADA system for power supply monitoring, control and access point power cycling in a wireless network in accordance with a preferred embodiment. At the top of the stack is the network operations gateway central control console G. This includes the console from which commands are issued and network information is accessed, stored and reports are generated. A central console at the gateway G provides centralized monitoring, reporting and control of power supplies IUPSs and power cycling of APs. These include a series of implementations that transfer status information from the IUPS to the central console via the AP and commands to the IUPS from the central console via the AP.
From the central console commands are issued and requests for status made via a command file and status file, or provides pointer addresses to a command table, or otherwise instructs the access point programming instruction module PmonD to initiate procedures according to those commands. The PmonD preferably resides at the access points and directly communicates to a particular power supply programming instruction module CHmon that executes at the power supply, and is preferably resident within the power supply box, that powers the access point preferably at which the particular PmonD access point programming resides. Generally, PmonD serves the following primary operations: (i) sends a heart beat to CHmon that signals normal operation, (ii) requests and receives status information to and from CHmon via the status file, (iii) transfers commands from the central console to CHmon via the command file. The PmonD module is part of a total monitoring information network and acts as liaison between the central console and the IUPS.
The AP program module PmonD works in conjunction with the power supply programming instruction module CHmon to execute those commands and/or PmonD simply acts as an interface from which CHmon receives the commands from the gateway central console. The CHmon module preferably resides in circuitry and an embedded micro-controller Mcu that controls power output and availability to the access point, sends status information, and receives commands. When the command includes a status request, PmonD requests and writes the status to a status file, or provides pointer addresses to a status table, or otherwise provides the central console information sufficient that the status information may be accessed or read. Typically CHmon senses the various measured variables used to determine an overall status of the power supply.
b illustrates an exemplary processing flow for the protocol stack of the SCADA system of
a is a flow diagram illustrating the control, data acquisition and processing at an access point of a wireless network in accordance with a preferred embodiment. The access point programming instructions PmonD are preferably written onto a flash card that is resident at the access point AP, and may alternatively be embedded as firmware or software onto a variety of machine-readable media. The PmonD programming is preferably configured to periodically run a control, data acquisition and processing routine as illustrated by the flow or block modular diagram of
The exemplary routine of
The next module that PmonD runs is a check command flags routine. The command flags may be checked within access point resident programming, or one or more tables or other data storage mechanisms resident at the access point. The command flags may have default values set during initialization that may be changed by commands written to the command file by the gateway console. The flags may be selectively changed, multiple ones may be changed in a single cycle, or they may be changed or rewritten as a group.
Next, a CHmon status request routine serves to send a signal to the power supply module CHmon to perform various sensory or measurement routines to determine various quantities associated with the power supply. PmonD reads the status entries from the CHmon status routine, then PmonD processes the status data that it has received from CHmon and stores it in the access point status file.
Among the quantities that may be preferably stored following the CHmon sensing and status receiving and processing by PmonD are status, AC, Lid, Vin, Vf, Iload, Ibatt, Temp., resets, reset_t, batt %, firmware version and serial #. Some of these are self-explanatory. “Status” is the overall status determined by the process CHmon status module. “AC” is a determination regarding the input AC power is determined by the input VDC by proxy, e.g., whether the 110 V input is hot or cold, or whether 220 V may be in use at this site. “Fuse” is a status of the fuse within the power supply, e.g., whether it is functional or not. “Lid” is a status of a lid of the power supply box, e.g., whether it is open, closed and locked, or closed and unlocked. “Vin” is the DC voltage that is being applied at the circuit board of the power supply unit, and may include one or more further voltages present within the circuit board and/or the output voltage that is charging the battery. “Iload” is the current across the access point equipment that is being powered by the power supply UPS in order that the antennas are able to send and receive RF signals. “Ibatt” is the current to the battery. “Temp” is the temperature within the power supply box, and may include multiple thermal measurements at key components or just a single reference temperature. “Batt %” is the percentage of maximum charge presently measured across the battery terminals. Because the battery is being charged by the AC/DC converted external power, the battery should not fall much from its maximum voltage other than according to the temperature, which is itself measured, and according to the ordinary life of the continuously-charged battery. “Resets” are the number of power cycles initiated within the time interval reset_t within the power supply system, and “Reset_t” is a reset of the 24 hr clock that coincides with the Mcu reset, which is also an indicator if the heard beat has timed out. “Serial #” and “firmware” are power supply and product specific indicators, respectively.
The final block, module or sub-routine of the overall routine of
b shows exemplary contents of the command file of
c shows exemplary contents of the power supply module status file preferably resident at the access point. All of these have been just described briefly in reference to the programming logic of the CHmon module of the routine of
The initialize module is shown including a serial interface configuration procedure for communicating with the power supply module CHmon. Further initialization routines may be included such as may be useful for writing status and reading commands depending on how this is performed in a particular system, or so that coupled access points may communicate, or to communicate with a client computer of a connected CPE, or to communicate with a mobile repair truck, in addition to the central console etc.
The request CHmon status module is shown including a pre-amble block. This pre-amble block may be that which is generated by PmonD and interpreted as a heart beat signal by the power supply programming module CHmon, which is listening for it. It has the same purpose as the pre-amble associated with the heart beat, and that is to ensure the proper commands and data are transferred to the power supply module CHmon and the status data from CHmon to the access point module PmonD. The pre-amble also reduces the threat of CHmon responding to an invalid command and entering an unstable state. Preferably, the sending of a pre-amble signal to CHmon prompts an acknowledge signal to be sent from CHmon to PmonD, such that CHmon is then expecting a command or heart beat and PmonD knows that CHmon is expecting to receive the command or heart beat within a certain time. The PmonD programming may instruct it not to send the command until it receives an acknowledge signal from CHmon, and if no acknowledge is received, then processing may be further provided along the lines of checking whether the power supply module is operating properly and/or initiating a Mcu reset or cycle power routine unless communication has failed.
Referring briefly to
Referring back to
The other four commands illustrated at
a is flow diagram illustrating data acquisition and processing at the power supply programming module CHmon which powers an access point of a wireless network in accordance with a preferred embodiment. The CHmon is one of the five basic parts of the SCADA system of the preferred embodiment that is particularly for monitoring parameters associated with the functioning of the power supply and communicating that information to the access point programming module PmonD and/or writing directly to its own status file or otherwise storing the information. CHmon preferably resides within the power supply box with one or more batteries that are charged by external power via an AC/DC converter. CHmon preferably comprises a complete manageable uninterruptible power supply (UPS) system that includes a circuit board and software or firmware combination (see
As with the PmonD main programming routine described above with reference to
The CHmon heart beat module of
When, on the other hand, the heart beat signal is received at or near the expected time, and thereby the power supply module CHmon is defaulted to continue processing with the understanding that the access point is operating properly, then the sensing module runs its routine. Referring back now to
Next, an event recognition module determines whether one or more events are occurring such as: fuse (e.g., whether the fuse is blown, or if the fuse is resettable such as with thermal fuses then whether the fuse is presently set), AC (e.g., whether the AC power is actively supplying energy to the power supply system via the DC converter), Lid (e.g., whether the lid is open or unlocked), BattV low (whether the voltage on the battery is below a certain threshold or a certain percentage below an expected value depending on its age or use, and the temperature, among perhaps other parameters affecting the battery voltage), Power Cycle (e.g., whether the power is presently being cycled), Temp. High (e.g., whether the temperature of the power supply box or of one or more critical locations in the box exceeds a threshold value), Curr. High (e.g., whether the load or battery current exceeds a threshold value).
The calculate module of
b illustrates a set of additional gateway main program commands, i.e., in addition to the status request command and perhaps other commands that may be communicated through the access point programming interface module PmonD to the power supply programming module CHmon, and that may be implemented by data acquisition and processing at the power supply. As mentioned above, in one embodiment the status request is defaulted to an “on” state so that CHmon runs status automatically upon receiving a heart beat from PmonD, and the update EEPROM and/or flash and update battery date commands may be implemented by PmonD without CHmon processing or communication being involved. In alternative embodiments, status commands may be communicated to CHmon from the gateway main program and/or from PmonD, and CHmon may be involved in further processing such that further modules than those provided at
While an exemplary drawings and specific embodiments of the present invention have been described and illustrated, it is to be understood that that the scope of the present invention is not to be limited to the particular embodiments discussed. Thus, the embodiments shall be regarded as illustrative rather than restrictive, and it should be understood that variations may be made in those embodiments by workers skilled in the arts without departing from the scope of the present invention as set forth in the appended claims and structural and functional equivalents thereof.
In addition, in methods that may be performed according to preferred embodiments herein and that may have been described above, the operations have been described in selected typographical sequences. However, the sequences have been selected and so ordered for typographical convenience and are not intended to imply any particular order for performing the operations.