US20170199713A1 - Automatic Data Display Selection - Google Patents
Automatic Data Display Selection Download PDFInfo
- Publication number
- US20170199713A1 US20170199713A1 US15/450,929 US201715450929A US2017199713A1 US 20170199713 A1 US20170199713 A1 US 20170199713A1 US 201715450929 A US201715450929 A US 201715450929A US 2017199713 A1 US2017199713 A1 US 2017199713A1
- Authority
- US
- United States
- Prior art keywords
- data type
- data
- list
- network
- available
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 238000000034 method Methods 0.000 claims description 54
- 230000004044 response Effects 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 description 23
- 238000004891 communication Methods 0.000 description 10
- 230000003287 optical effect Effects 0.000 description 8
- 239000000446 fuel Substances 0.000 description 7
- 239000010705 motor oil Substances 0.000 description 6
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000000007 visual effect Effects 0.000 description 3
- 230000006855 networking Effects 0.000 description 2
- 239000003921 oil Substances 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000010079 rubber tapping Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 230000005641 tunneling Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
- B60K35/00—Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
- B60K35/00—Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
- B60K35/20—Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor
- B60K35/21—Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor using visual output, e.g. blinking lights or matrix displays
- B60K35/22—Display screens
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
- B60K35/00—Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
- B60K35/20—Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor
- B60K35/29—Instruments characterised by the way in which information is handled, e.g. showing information on plural displays or prioritising information according to driving conditions
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
- B60K35/00—Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
- B60K35/65—Instruments specially adapted for specific vehicle types or users, e.g. for left- or right-hand drive
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
- B60K35/00—Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
- B60K35/80—Arrangements for controlling instruments
- B60K35/81—Arrangements for controlling instruments for controlling displays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
- G06F16/90324—Query formulation using system suggestions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9038—Presentation of query results
-
- G06F17/3097—
-
- G06F17/30991—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/147—Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
- B60K2360/00—Indexing scheme associated with groups B60K35/00 or B60K37/00 relating to details of instruments or dashboards
- B60K2360/18—Information management
- B60K2360/186—Displaying information according to relevancy
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
- B60K35/00—Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
- B60K35/10—Input arrangements, i.e. from user to vehicle, associated with vehicle functions or specially adapted therefor
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60K—ARRANGEMENT OR MOUNTING OF PROPULSION UNITS OR OF TRANSMISSIONS IN VEHICLES; ARRANGEMENT OR MOUNTING OF PLURAL DIVERSE PRIME-MOVERS IN VEHICLES; AUXILIARY DRIVES FOR VEHICLES; INSTRUMENTATION OR DASHBOARDS FOR VEHICLES; ARRANGEMENTS IN CONNECTION WITH COOLING, AIR INTAKE, GAS EXHAUST OR FUEL SUPPLY OF PROPULSION UNITS IN VEHICLES
- B60K35/00—Instruments specially adapted for vehicles; Arrangement of instruments in or on vehicles
- B60K35/20—Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor
- B60K35/21—Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor using visual output, e.g. blinking lights or matrix displays
- B60K35/215—Output arrangements, i.e. from vehicle to user, associated with vehicle functions or specially adapted therefor using visual output, e.g. blinking lights or matrix displays characterised by the combination of multiple visual outputs, e.g. combined instruments with analogue meters and additional displays
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2370/00—Aspects of data communication
- G09G2370/02—Networking aspects
- G09G2370/025—LAN communication management
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2380/00—Specific applications
- G09G2380/10—Automotive applications
Definitions
- gauges or displays may be used to monitor information while operating a vessel.
- a gauge or display may be used to display engine information, vessel speed, location, maps or charts, heading, fuel levels, trim information, or other data relevant to a vessel operator.
- FIG. 1 is a block diagram of a vessel in accordance with implementations of various techniques described herein.
- FIG. 2 is an illustration of a display device in accordance with implementations of various techniques described herein.
- FIG. 3 is a flow diagram of a method for automatically selecting data for display in accordance with implementations of various techniques described herein.
- FIG. 4 is a data item hierarchy in accordance with implementations of various techniques described herein.
- FIG. 5 is an illustration of a marine data display in accordance with implementations of various techniques described herein.
- FIG. 6 illustrates a schematic diagram of a computing system in which the various technologies described herein may be incorporated and practiced.
- a gauge may be a device used to view marine data.
- a gauge may display the speed of a vessel and the revolutions per minute (RPM) of a motor attached to the vessel.
- Sensors, gauges, and other electrical devices may be connected to the network bus, or networked, using a direct physical connection or a wireless link. Additionally, standardized protocols may be used for communication between the networked devices.
- NMEA 2000 protocol or variations of the NMEA 2000 protocol may be used for communication between sensors and a gauge on a marine vessel.
- Society of Automotive Engineers J1939 protocol may be used for communication between an inboard gasoline and diesel engine and a gauge on a marine vessel.
- FIG. 1 is a block diagram of vessel 100 in accordance with implementations of various techniques described herein.
- the vessel 100 may include a gauge 110 that displays data.
- the gauge 110 may display a speed of the vessel and a revolutions per minute (RPM) of the vessel's motor.
- RPM revolutions per minute
- Many vessels 100 are powered by one or more engine(s).
- the vessel 100 may include an engine sensor 120 that may monitor conditions in the engine, such as, but not limited to, temperature, pressure, fuel information, general engine and diagnostic information, and engine RPMs.
- the vessel 100 may include a Global Positioning System (GPS) 130 that may be used to determine the position, heading, or speed of the vessel 100 .
- GPS Global Positioning System
- the vessel 100 may include a sonar 140 that provides an underwater survey beneath the vessel 100 .
- the sonar 140 may be used to determine the depth of the water beneath the vessel 100 .
- the gauge 110 , engine sensor 120 , GPS 130 , and sonar 140 may be configured to communicate data, send commands, and receive commands using the NMEA 2000 standard, or any other communication protocol, including a J1939 network, a proprietary network such as SmartCraftTM, Command LinkTM and Command Link PlusTM, or a Bombardier Installational ProductsTM Network.
- the gauge 110 , engine sensor 120 , GPS 130 , and sonar 140 may each be connected to an NMEA 2000 bus 150 , or any other type of network, such as Ethernet, Wireless Ethernet, or BluetoothTM.
- the NMEA 2000 bus 150 may transport data and commands between sensors.
- the gauge 110 may use the NMEA 2000 bus 150 to receive and display data from the engine sensor 120 , GPS 130 , and sonar 140 .
- the vessel 100 may include any combination of sensors, and communication methods.
- FIG. 2 illustrates a display device 200 in accordance with implementations of various techniques described herein.
- the display device 200 may receive and display data compliant with or similar to the NMEA 2000 standard.
- the display device 200 may receive and display data from one or more sensors, such as an engine sensor 120 , a GPS 130 , or a sonar 140 , over a network bus, such as an NMEA 2000 bus 150 .
- the display device 200 may display data received from sensors or any other electronic equipment on the vessel 100 .
- the data may be displayed on one or more pages, and a user may select which page is displayed.
- a page on the display device 200 may include a predetermined number of fields 210 , 220 , 230 , and 240 .
- the display device 200 can be configured to always display a tachometer 250 , as described in commonly owned U.S. patent application Ser. No. 14/531,850, filed on 2014 Nov. 3 and titled REDUCED SIZE TACHOMETER DISPLAY.
- the display device 200 may include a plurality of buttons 260 .
- the buttons 260 may be used to select a page for the display device 200 to display.
- Different pages may display different types of data.
- the display device 200 may display a fuel page, an engine page, or a motoring page.
- the fields 210 - 240 may be populated with data items using a predetermined hierarchy.
- Each page displayed on the display device 200 may have an associated hierarchy used to select data items to display in the fields 210 - 40 .
- a first hierarchy may be used to populate a fuel page
- a second hierarchy may be used to populate an engine page
- a third hierarchy may be used to populate a motoring page.
- FIG. 3 is a flow chart of a method 300 for displaying data items in a hierarchy in accordance with implementations described herein.
- method 300 may be performed by any computer system 600 .
- method 300 may be performed by a computer system 600 in a gauge. It should be understood that while method 300 indicates a particular order of execution of operations, in some implementations, certain portions of the operations might be executed in a different order, and on different systems. Further, in some implementations, additional operations or steps may be added to the method 300 . Likewise, some operations or steps may be omitted.
- the method may retrieve a data selection hierarchy.
- the data selection hierarchy may be an ordered list of data items that may be displayed on a display device.
- the data selection hierarchy may be stored in a priority queue.
- FIG. 4 illustrates one example of a data selection hierarchy for an engine page.
- the method may also receive a number of fields to fill with display items. For example, an engine page may have three fields, and a motoring page may have four fields.
- method 300 may select a first data item in the data selection hierarchy retrieved at block 310 .
- the first data item retrieved would be a data item in the data selection hierarchy with the highest priority.
- one or more data items may describe a formula or instructions for calculating a data item. For example, if the data item is average speed, a formula corresponding to average speed may be retrieved with the data item.
- method 300 may determine whether data required by the data item selected at block 320 is available. For example, if the data item selected at block 320 is “vessel speed,” then method 300 may determine whether data from a GPS sensor or other speed sensor is available. In one implementation, method 300 may poll an NMEA 2000 bus on a vessel to determine whether the necessary data is available for the data item selected at block 320 . In certain instances, the data item selected at block 320 may require multiple types of data. For example, if the data item selected at block 320 is fuel efficiency, then at block 330 the method may determine whether data describing distance traveled is available and whether data describing fuel usage is available. In this example, fuel efficiency may only be calculated if both types of data are available.
- method 300 detects the required data for the selected data item at block 330 , then the method may continue to block 340 .
- the method may continue to block 360 .
- the data item selected at block 320 is speed, and a speed sensor or GPS sensor is detected at block 330 , then the method may continue to block 340 .
- the method may continue to block 360 .
- a next data item in the hierarchy retrieved at block 310 may be selected. For example, in FIG. 4 , if data corresponding to the alternator voltage 410 is not detected, then the engine temperature 420 may be selected as the next data item. After selecting a new data item at block 360 , the method may return to block 330 to determine whether data required for the selected item is available. For example, if the hierarchy retrieved at block 310 is the hierarchy illustrated in FIG. 4 , and the next item in the hierarchy 400 is engine temperature 420 , the method 300 may check at block 330 if an engine thermometer is available.
- the selected data item may be displayed or selected for display.
- a display device 200 may display the data item in a field on a page, such as field 210 , 220 , 230 , or 240 .
- FIG. 5 illustrates an example of data items being displayed in fields.
- “display” or “displayed” shall include projecting image(s), data, or text on a screen or visual board, or outputting image(s), data, or text in a format recognized by a device that includes a screen or visual board resulting in projection of the image(s), data, or text on the screen or visual board.
- “Display on a display device” may include outputting an image, data, or text formatted in a format recognized by the display device for display thereon, in addition to actually displaying on the display device.
- method 300 may determine whether all fields in a page are filled. If all of the fields in a page are filled, then the method 300 may terminate at block 370 . If all of the fields are not filled, then method 300 may return to block 360 . For example, if a page has four fields, and only three data items have been displayed at block 340 , then method 300 would select a next data item in the hierarchy at block 360 . In one implementation, method 300 at block 360 may also determine whether there are any data items left in the data selection hierarchy retrieved at block 310 . If no data items are left in the data selection hierarchy, then method 300 may terminate at block 350 rather than returning to block 360 . In this implementation, the page may be resized to fit the reduced number of data fields.
- method 300 may be executed again in order to display data from the engine water pressure 430 sensor.
- FIG. 4 is a data item hierarchy 400 in accordance with implementations of various techniques described herein.
- the hierarchy 400 includes a data item alternator voltage 410 , which has the highest priority.
- the availability of alternator voltage 410 may depend, for example, on whether a voltmeter or voltage data is available over a network.
- the data item engine temperature 420 may have the next (second) highest priority.
- the availability of the engine temperature 420 may depend on whether a thermometer inside the engine or temperature data is available over a network.
- the data item engine water pressure 430 may have the next (third) highest priority.
- the availability of the engine water pressure 430 may depend on whether water pressure data is available over a network.
- the data item engine hours 440 may have the next (fourth) highest priority.
- the availability of engine hours 440 may depend on whether an odometer or engine hours data is available over a network.
- the engine oil pressure 450 may have the next (fifth) highest priority.
- the availability of the engine oil pressure 450 may depend on whether a meter in an oil supply line or engine oil pressure data is available over a network.
- the engine oil temperature 460 may have the next (sixth) highest priority.
- the availability of the engine oil temperature 460 may depend on whether a thermometer in the oil supply line or engine oil temperature data is available over a network.
- the engine trim 470 may have the next (seventh) and lowest priority.
- the availability of the engine trim may depend on whether a sensor measuring the angle of an engine or engine trim data is available over a network.
- Implementations of various technologies described herein may be operational with numerous general purpose or special purpose computing system environments or configurations.
- Examples of well-known computing systems, environments, and/or configurations that may be suitable for use with the various technologies described herein include, but are not limited to, personal computers, server computers, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, smart phones, tablets, wearable computers, cloud computing systems, virtual computers, marine electronics devices, and the like.
- program modules include routines, programs, objects, components, data structures, etc. that performs particular tasks or implement particular abstract data types. Further, each program module may be implemented in its own way, and all need not be implemented the same way. While program modules may all execute on a single computing system, it should be appreciated that, in some implementations, program modules may be implemented on separate computing systems or devices adapted to communicate with one another. A program module may also be some combination of hardware and software where particular tasks performed by the program module may be done either through hardware, software, or both.
- program modules may be located in both local and remote computer storage media including memory storage devices.
- FIG. 6 illustrates a computing system 600 in accordance with implementations of various techniques described herein.
- Computing system 600 may be a conventional desktop, a handheld device, a wearable device, a controller, a personal digital assistant, a server computer, an electronic device/instrument, a laptop, a tablet, or part of a navigation system, marine electronics, or sonar system. It should be noted, however, that other computer system configurations may be used.
- the computing system 600 may include a central processing unit (CPU) 630 , a system memory 626 , a graphics processing unit (GPU) 631 and a system bus 628 that couples various system components including the system memory 626 to the CPU 630 .
- CPU central processing unit
- GPU graphics processing unit
- system bus 628 that couples various system components including the system memory 626 to the CPU 630 .
- the system bus 628 may be any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures.
- bus architectures include Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus also known as Mezzanine bus.
- ISA Industry Standard Architecture
- MCA Micro Channel Architecture
- EISA Enhanced ISA
- VESA Video Electronics Standards Association
- PCI Peripheral Component Interconnect
- the computer system 600 may be attached to an NMEA 2000 bus or network.
- the computer system 600 may send or receive data to or from another device attached to the NMEA 2000 bus.
- the computer system 600 may transmit commands and receive data from a motor or a sensor using an NMEA 2000 bus.
- the marine electronics device 600 may transmit or receive NMEA 2000 compliant messages, messages in a proprietary format that do not interfere with NMEA 2000 compliant messages or devices, or messages in any other format.
- the NMEA 2000 data may be displayed using method 300 .
- the system memory 626 may include a read only memory (ROM) 612 and a random access memory (RAM) 616 .
- ROM read only memory
- RAM random access memory
- a basic input/output system (BIOS) 614 containing the basic routines that help transfer information between elements within the computing system 600 , such as during start-up, may be stored in the ROM 612 .
- the computing system may be implemented using a printed circuit board containing various components including processing units, data storage memory, and connectors.
- Certain implementations may be configured to be connected to a GPS and/or a sonar system.
- the GPS and/or sonar system may be connected via the network interface 444 or Universal Serial Bus (USB) interface 442 .
- USB Universal Serial Bus
- the computing system 400 , the monitor 434 , the screen 405 and buttons may be integrated into a console.
- the computing system 600 may further include a hard disk drive interface 636 for reading from and writing to a hard disk 650 , a memory card reader 652 for reading from and writing to a removable memory card 656 , and an optical disk drive 654 for reading from and writing to a removable optical disk 658 , such as a CD ROM, DVD ROM or other optical media.
- the hard disk 650 , the memory card reader 652 , and the optical disk drive 654 may be connected to the system bus 628 by a hard disk drive interface 636 , a memory card reader interface 638 , and an optical drive interface 640 , respectively.
- the drives and their associated computer-readable media may provide nonvolatile storage of computer-readable instructions, data structures, program modules and other data for the computing system 600 .
- computing system 600 may also include other types of computer-readable media that may be accessed by a computer.
- computer-readable media may include computer storage media and communication media.
- Computer storage media may include volatile and non-volatile, and removable and non-removable media implemented in any method or technology for storage of information, such as computer-readable instructions, data structures, program modules or other data.
- Computer storage media may further include RAM, ROM, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other solid state memory technology, including a Solid State Disk (SSD), CD-ROM, digital versatile disks (DVD), or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computing system 600 .
- Communication media may embody computer readable instructions, data structures, program modules or other data in a modulated data signal, such as a carrier wave or other transport mechanism and may include any information delivery media.
- a number of program modules may be stored on the hard disk 650 , memory card 656 , optical disk 658 , ROM 612 or RAM 616 , including an operating system 618 , one or more application programs 620 , and program data 624 .
- the hard disk 650 may store a database system.
- the database system could include, for example, recorded points.
- the application programs 620 may include various mobile applications (“apps”) and other applications configured to perform various methods and techniques described herein.
- the operating system 618 may be any suitable operating system that may control the operation of a networked personal or server computer, such as Windows® XP, Mac OS® X, Unix-variants (e.g., Linux® and BSD®), Android®, iOS®, and the like.
- buttons 662 may be physical buttons, virtual buttons, or combinations thereof.
- Other input devices may include a microphone, a mouse, or the like (not shown).
- These and other input devices may be connected to the CPU 630 through a USB interface 642 coupled to system bus 628 , but may be connected by other interfaces, such as a parallel port, or game port.
- the one or more application programs 620 or 670 stored in the computer-readable media can include a plurality of instructions that when executed by a processing unit, such as a CPU 630 , cause the computing system to perform any of the techniques, or portions thereof, that are described herein.
- first, second, etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another.
- a first object or step could be termed a second object or step, and, similarly, a second object or step could be termed a first object or step, without departing from the scope of the invention.
- the first object or step, and the second object or step are both objects or steps, respectively, but they are not to be considered the same object or step.
- the term “if” may be construed to mean “when” or “upon” or “in response to determining” or “in response to detecting,” depending on the context.
- the phrase “if it is determined” or “if [a stated condition or event] is detected” may be construed to mean “upon determining” or “in response to determining” or “upon detecting [the stated condition or event]” or “in response to detecting [the stated condition or event],” depending on the context.
- a “request” or “can request” shall also include, but are not limited to, touching a screen, double tapping a screen (tapping the screen twice in rapid succession), pressing a particular physical or virtual button, making a selection from a menu, swiping the screen (placing a finger towards an edge of the screen and traversing the screen while maintaining contact between the finger and the screen) placement of a cursor at a particular location, stylus pointing, mouse selection, an audible command, as well as the explicit description of the “request” for the particular operations.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Chemical & Material Sciences (AREA)
- Combustion & Propulsion (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
Description
- This application claims priority to and is a divisional of U.S. patent application Ser. No. 14/531,855, filed on 2014 Nov. 3 and titled AUTOMATIC DATA DISPLAY SELECTION, and is related to commonly owned U.S. patent application Ser. No. 14/531,850, filed on 2014 Nov. 3 and titled REDUCED SIZE TACHOMETER DISPLAY, the entire disclosure of each being incorporated herein by reference.
- This section is intended to provide background information to facilitate a better understanding of various technologies described herein. As the section's title implies, this is a discussion of related art. That such art is related in no way implies that it is prior art. The related art may or may not be prior art. It should therefore be understood that the statements in this section are to be read in this light, and not as admissions of prior art.
- Operators of marine vessels may use gauges or displays to monitor information while operating a vessel. A gauge or display may be used to display engine information, vessel speed, location, maps or charts, heading, fuel levels, trim information, or other data relevant to a vessel operator.
- Described herein are implementations of various technologies for displaying marine electronics data. In one implementation, a non-transitory computer-readable medium having stored thereon computer-executable instructions which, when executed by a computer, cause the computer to perform various actions. The actions may include retrieving a hierarchical list of data items that correspond to marine electronics data. The actions may include selecting a first data item from the list of data items. The actions may include detecting whether data corresponding to the first data item is available on a network. The actions may also include displaying data corresponding to the first data item if data corresponding to the first data item is available on the network.
- Described herein are also implementations of various technologies for displaying marine electronics data using priority. In one implementation, a non-transitory computer-readable medium having stored thereon computer-executable instructions which, when executed by a computer, cause the computer to perform various actions. The actions may include retrieving a hierarchical list of data items that correspond to marine electronics data. The actions may include selecting a first data item from the list of data items. The first data item has the highest priority in the list. The actions may include determining whether data corresponding to the first data item is detected. The actions may include displaying data corresponding to the first data item if data corresponding to the first data item is detected. The actions may include selecting a second data item from the hierarchy. The second data item has a lower priority than the first data item. The actions may include determining whether data corresponding to the second data item is detected. The actions may also include displaying data corresponding to the second data item if data corresponding to the second data item is detected.
- Described herein are also implementations of various technologies for filling display, fields on a display. In one implementation, a non-transitory computer-readable medium having stored thereon computer-executable instructions which, when executed by a computer, cause the computer to perform various actions. The actions may, include receiving a number of display fields. The actions may include retrieving a list of data types that correspond to marine electronics. The actions may also include filling the number of display fields on a display with data corresponding to the list of data types. Data is only displayed if a sensor transmitting the data is detected on a network.
- Implementations of various technologies will hereafter be described with reference to the accompanying drawings. It should be understood, however, that the accompanying drawings illustrate only the various implementations described herein and are not meant to limit the scope of various technologies described herein.
-
FIG. 1 is a block diagram of a vessel in accordance with implementations of various techniques described herein. -
FIG. 2 is an illustration of a display device in accordance with implementations of various techniques described herein. -
FIG. 3 is a flow diagram of a method for automatically selecting data for display in accordance with implementations of various techniques described herein. -
FIG. 4 is a data item hierarchy in accordance with implementations of various techniques described herein. -
FIG. 5 is an illustration of a marine data display in accordance with implementations of various techniques described herein. -
FIG. 6 illustrates a schematic diagram of a computing system in which the various technologies described herein may be incorporated and practiced. - Many vessels are equipped with a variety of sensors and instruments such as navigation systems, sonar systems, and sensors for an engine. Sensors and any other electronic devices, such as a gauge, may be connected to a network bus and may transmit or receive information using the network bus. Examples of a sensor may include any device, electrical, mechanical, chemical, or any combination thereof, that measures marine data. A gauge may be a device used to view marine data. For example, a gauge may display the speed of a vessel and the revolutions per minute (RPM) of a motor attached to the vessel. Sensors, gauges, and other electrical devices may be connected to the network bus, or networked, using a direct physical connection or a wireless link. Additionally, standardized protocols may be used for communication between the networked devices. For example, the National Marine Electronics Association (NMEA) 2000 protocol or variations of the NMEA 2000 protocol may be used for communication between sensors and a gauge on a marine vessel. In another example, the Society of Automotive Engineers J1939 protocol may be used for communication between an inboard gasoline and diesel engine and a gauge on a marine vessel.
-
FIG. 1 is a block diagram ofvessel 100 in accordance with implementations of various techniques described herein. Thevessel 100 may include agauge 110 that displays data. For example, thegauge 110 may display a speed of the vessel and a revolutions per minute (RPM) of the vessel's motor.Many vessels 100 are powered by one or more engine(s). Accordingly, thevessel 100 may include anengine sensor 120 that may monitor conditions in the engine, such as, but not limited to, temperature, pressure, fuel information, general engine and diagnostic information, and engine RPMs. Thevessel 100 may include a Global Positioning System (GPS) 130 that may be used to determine the position, heading, or speed of thevessel 100. Additionally, thevessel 100 may include asonar 140 that provides an underwater survey beneath thevessel 100. For example, thesonar 140 may be used to determine the depth of the water beneath thevessel 100. - The
gauge 110,engine sensor 120, GPS 130, andsonar 140 may be configured to communicate data, send commands, and receive commands using the NMEA 2000 standard, or any other communication protocol, including a J1939 network, a proprietary network such as SmartCraft™, Command Link™ and Command Link Plus™, or a Bombardier Recreational Products™ Network. Thegauge 110,engine sensor 120, GPS 130, andsonar 140 may each be connected to an NMEA 2000 bus 150, or any other type of network, such as Ethernet, Wireless Ethernet, or Bluetooth™. The NMEA 2000 bus 150 may transport data and commands between sensors. For example, thegauge 110 may use the NMEA 2000 bus 150 to receive and display data from theengine sensor 120,GPS 130, andsonar 140. - Although the
vessel 100 is shown with agauge 110,engine sensor 120,GPS 130,sonar 140, and NMEA 2000 bus 150, thevessel 100 may include any combination of sensors, and communication methods. - Various implementations described herein are with reference to the
gauge 110, described inFIG. 1 . However, it should be understood that the implementations described herein may be used in any display device or a multi-function display that displays marine data.FIG. 2 illustrates adisplay device 200 in accordance with implementations of various techniques described herein. Thedisplay device 200 may receive and display data compliant with or similar to the NMEA 2000 standard. For example, thedisplay device 200 may receive and display data from one or more sensors, such as anengine sensor 120, aGPS 130, or asonar 140, over a network bus, such as an NMEA 2000 bus 150. - The
display device 200 may display data received from sensors or any other electronic equipment on thevessel 100. The data may be displayed on one or more pages, and a user may select which page is displayed. A page on thedisplay device 200 may include a predetermined number offields display device 200 can be configured to always display atachometer 250, as described in commonly owned U.S. patent application Ser. No. 14/531,850, filed on 2014 Nov. 3 and titled REDUCED SIZE TACHOMETER DISPLAY. Thedisplay device 200 may include a plurality ofbuttons 260. Thebuttons 260 may be used to select a page for thedisplay device 200 to display. Different pages may display different types of data. For example, thedisplay device 200 may display a fuel page, an engine page, or a motoring page. - The fields 210-240 may be populated with data items using a predetermined hierarchy. Each page displayed on the
display device 200 may have an associated hierarchy used to select data items to display in the fields 210-40. For example, a first hierarchy may be used to populate a fuel page, a second hierarchy may be used to populate an engine page, and a third hierarchy may be used to populate a motoring page. -
FIG. 3 is a flow chart of amethod 300 for displaying data items in a hierarchy in accordance with implementations described herein. In one implementation,method 300 may be performed by anycomputer system 600. For example,method 300 may be performed by acomputer system 600 in a gauge. It should be understood that whilemethod 300 indicates a particular order of execution of operations, in some implementations, certain portions of the operations might be executed in a different order, and on different systems. Further, in some implementations, additional operations or steps may be added to themethod 300. Likewise, some operations or steps may be omitted. - At
block 310, the method may retrieve a data selection hierarchy. The data selection hierarchy may be an ordered list of data items that may be displayed on a display device. For example, the data selection hierarchy may be stored in a priority queue.FIG. 4 illustrates one example of a data selection hierarchy for an engine page. The method may also receive a number of fields to fill with display items. For example, an engine page may have three fields, and a motoring page may have four fields. - At
block 320,method 300 may select a first data item in the data selection hierarchy retrieved atblock 310. For example, if the data selection hierarchy is a priority queue, then the first data item retrieved would be a data item in the data selection hierarchy with the highest priority. In one implementation, one or more data items may describe a formula or instructions for calculating a data item. For example, if the data item is average speed, a formula corresponding to average speed may be retrieved with the data item. - At
block 330,method 300 may determine whether data required by the data item selected atblock 320 is available. For example, if the data item selected atblock 320 is “vessel speed,” thenmethod 300 may determine whether data from a GPS sensor or other speed sensor is available. In one implementation,method 300 may poll an NMEA 2000 bus on a vessel to determine whether the necessary data is available for the data item selected atblock 320. In certain instances, the data item selected atblock 320 may require multiple types of data. For example, if the data item selected atblock 320 is fuel efficiency, then atblock 330 the method may determine whether data describing distance traveled is available and whether data describing fuel usage is available. In this example, fuel efficiency may only be calculated if both types of data are available. - If
method 300 detects the required data for the selected data item atblock 330, then the method may continue to block 340. Alternatively, if the required data is not detected atblock 330, then the method may continue to block 360. For example, if the data item selected atblock 320 is speed, and a speed sensor or GPS sensor is detected atblock 330, then the method may continue to block 340. In another example, if the data item selected atblock 320 is engine hours, but no engine hours data is detected, then the method may continue to block 360. - At
block 360, a next data item in the hierarchy retrieved atblock 310 may be selected. For example, inFIG. 4 , if data corresponding to thealternator voltage 410 is not detected, then theengine temperature 420 may be selected as the next data item. After selecting a new data item atblock 360, the method may return to block 330 to determine whether data required for the selected item is available. For example, if the hierarchy retrieved atblock 310 is the hierarchy illustrated inFIG. 4 , and the next item in thehierarchy 400 isengine temperature 420, themethod 300 may check atblock 330 if an engine thermometer is available. - At
block 340, the selected data item may be displayed or selected for display. For example, adisplay device 200 may display the data item in a field on a page, such asfield FIG. 5 illustrates an example of data items being displayed in fields. For purposes of this document, “display” or “displayed” shall include projecting image(s), data, or text on a screen or visual board, or outputting image(s), data, or text in a format recognized by a device that includes a screen or visual board resulting in projection of the image(s), data, or text on the screen or visual board. “Display on a display device” may include outputting an image, data, or text formatted in a format recognized by the display device for display thereon, in addition to actually displaying on the display device. - At
block 350,method 300 may determine whether all fields in a page are filled. If all of the fields in a page are filled, then themethod 300 may terminate atblock 370. If all of the fields are not filled, thenmethod 300 may return to block 360. For example, if a page has four fields, and only three data items have been displayed atblock 340, thenmethod 300 would select a next data item in the hierarchy atblock 360. In one implementation,method 300 atblock 360 may also determine whether there are any data items left in the data selection hierarchy retrieved atblock 310. If no data items are left in the data selection hierarchy, thenmethod 300 may terminate atblock 350 rather than returning to block 360. In this implementation, the page may be resized to fit the reduced number of data fields. - In one implementation,
method 300 may replace a data item in response to the removal or addition of a sensor or other electrical device from a network. For example, in response to removal of a sensor the method may determine whether any of the data items displayed in any of the fields are affected. If the displayed data items are affected by the removal, thenmethod 300 may be executed again in order to display different data items. Alternatively, the affected data item or items may be replaced using blocks 320-350, without altering the unaffected data items. If a sensor or other electrical device is added to a network, thenmethod 300 may be executed again in order to include data from the newly added sensor. - For example, if the hierarchy retrieved at
block 310 is thehierarchy 400, and a sensor transmitting data describingengine water pressure 430 is added to the network, thenmethod 300 may be executed again in order to display data from theengine water pressure 430 sensor. -
FIG. 4 is adata item hierarchy 400 in accordance with implementations of various techniques described herein. Thehierarchy 400 includes a dataitem alternator voltage 410, which has the highest priority. The availability ofalternator voltage 410 may depend, for example, on whether a voltmeter or voltage data is available over a network. The dataitem engine temperature 420 may have the next (second) highest priority. The availability of theengine temperature 420 may depend on whether a thermometer inside the engine or temperature data is available over a network. The data itemengine water pressure 430 may have the next (third) highest priority. The availability of theengine water pressure 430 may depend on whether water pressure data is available over a network. The dataitem engine hours 440 may have the next (fourth) highest priority. The availability ofengine hours 440 may depend on whether an odometer or engine hours data is available over a network. Theengine oil pressure 450 may have the next (fifth) highest priority. The availability of theengine oil pressure 450 may depend on whether a meter in an oil supply line or engine oil pressure data is available over a network. Theengine oil temperature 460 may have the next (sixth) highest priority. The availability of theengine oil temperature 460 may depend on whether a thermometer in the oil supply line or engine oil temperature data is available over a network. Theengine trim 470 may have the next (seventh) and lowest priority. The availability of the engine trim may depend on whether a sensor measuring the angle of an engine or engine trim data is available over a network. - It is noted that in certain implementations, the
hierarchy 400 can include additional engine data items, or omit any of the engine data items 410-470, or have data items 410-470 with different priority levels. -
FIG. 5 illustrates amarine data display 500 in accordance with implementations described herein. Thedisplay 500 includesfields display 500 may display data items from an engine data hierarchy, such ashierarchy 400, usingmethod 300. Theengine data page 500 may be displayed on a gauge ordisplay device 200, illustrated inFIG. 2 , a multi-function display, a tablet computer, a smartphone, a wearable computer, or any other electronic device on avessel 100. - In the illustrated display,
field 510displays engine temperature 420,field 520displays engine trim 470,field 530displays engine hours 440, andfield 540displays alternator voltage 410. Usingmethod 300, the fields 510-40 in thedisplay 500 may be automatically populated with data items. Additionally, usingmethod 300, thedisplay 500 may automatically adjust to display data actively being transmitted on a network. For example, if data corresponding to engine trim 470 was no longer being transmitted on a network, then field 520 may automatically display a different data item. - Implementations of various technologies described herein may be operational with numerous general purpose or special purpose computing system environments or configurations. Examples of well-known computing systems, environments, and/or configurations that may be suitable for use with the various technologies described herein include, but are not limited to, personal computers, server computers, hand-held or laptop devices, multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, smart phones, tablets, wearable computers, cloud computing systems, virtual computers, marine electronics devices, and the like.
- The various technologies described herein may be implemented in the general context of computer-executable instructions, such as program modules, being executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc. that performs particular tasks or implement particular abstract data types. Further, each program module may be implemented in its own way, and all need not be implemented the same way. While program modules may all execute on a single computing system, it should be appreciated that, in some implementations, program modules may be implemented on separate computing systems or devices adapted to communicate with one another. A program module may also be some combination of hardware and software where particular tasks performed by the program module may be done either through hardware, software, or both.
- The various technologies described herein may be implemented in the context of marine electronics, such as devices found in marine vessels and/or navigation systems. Ship instruments and equipment may be connected to the computing systems described herein for executing one or more navigation technologies. As such, the computing systems may be configured to operate using sonar, radar, GPS and like technologies.
- The various technologies described herein may also be implemented in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network, e.g., by hardwired links, wireless links, or combinations thereof. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices.
-
FIG. 6 illustrates acomputing system 600 in accordance with implementations of various techniques described herein.Computing system 600 may be a conventional desktop, a handheld device, a wearable device, a controller, a personal digital assistant, a server computer, an electronic device/instrument, a laptop, a tablet, or part of a navigation system, marine electronics, or sonar system. It should be noted, however, that other computer system configurations may be used. - The
computing system 600 may include a central processing unit (CPU) 630, asystem memory 626, a graphics processing unit (GPU) 631 and asystem bus 628 that couples various system components including thesystem memory 626 to theCPU 630. Although only oneCPU 630 is illustrated inFIG. 6 , it should be understood that in some implementations thecomputing system 600 may include more than oneCPU 630. - The
CPU 630 may include a microprocessor, a microcontroller, a processor, a programmable integrated circuit, or a combination thereof. TheCPU 630 can comprise an off-the-shelf processor such as a Reduced Instruction Set Computer (RISC), or a Microprocessor without Interlocked Pipeline Stages (MIPS) processor, or a combination thereof. TheCPU 630 may also include a proprietary processor. The CPU may include a multi-core processor. - The
GPU 631 may be a microprocessor specifically designed to manipulate and implement computer graphics. TheCPU 630 may offload work to theGPU 631. TheGPU 631 may have its own graphics memory, and/or may have access to a portion of thesystem memory 626. As with theCPU 630, theGPU 631 may include one or more processing units, and each processing unit may include one or more cores. - The
CPU 630 may provide output data to theGPU 631. TheGPU 631 may generate graphical user interfaces that present the output data. TheGPU 631 may also provide objects, such as menus, in the graphical user interface. A user may provide inputs by interacting with the objects. TheGPU 631 may receive the inputs from interaction with the objects and provide the inputs to theCPU 630. Avideo adapter 632 may be provided to convert graphical data into signals for amonitor 634. Themonitor 634 includes ascreen 605. In certain implementations, thescreen 605 may be sensitive to touching by a finger. In other implementations, thescreen 605 may be sensitive to the body heat from the finger, a stylus, or responsive to a mouse. - The
system bus 628 may be any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, and a local bus using any of a variety of bus architectures. By way of example, and not limitation, such architectures include Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus also known as Mezzanine bus. In certain implementations, thecomputer system 600 may be attached to an NMEA 2000 bus or network. Thecomputer system 600 may send or receive data to or from another device attached to the NMEA 2000 bus. For example, thecomputer system 600 may transmit commands and receive data from a motor or a sensor using an NMEA 2000 bus. Themarine electronics device 600 may transmit or receive NMEA 2000 compliant messages, messages in a proprietary format that do not interfere with NMEA 2000 compliant messages or devices, or messages in any other format. The NMEA 2000 data may be displayed usingmethod 300. - The
system memory 626 may include a read only memory (ROM) 612 and a random access memory (RAM) 616. A basic input/output system (BIOS) 614, containing the basic routines that help transfer information between elements within thecomputing system 600, such as during start-up, may be stored in theROM 612. The computing system may be implemented using a printed circuit board containing various components including processing units, data storage memory, and connectors. - Certain implementations may be configured to be connected to a GPS and/or a sonar system. The GPS and/or sonar system may be connected via the network interface 444 or Universal Serial Bus (USB) interface 442. In one implementation, the
computing system 400, the monitor 434, the screen 405 and buttons may be integrated into a console. - The
computing system 600 may further include a hard disk drive interface 636 for reading from and writing to ahard disk 650, amemory card reader 652 for reading from and writing to aremovable memory card 656, and anoptical disk drive 654 for reading from and writing to a removableoptical disk 658, such as a CD ROM, DVD ROM or other optical media. Thehard disk 650, thememory card reader 652, and theoptical disk drive 654 may be connected to thesystem bus 628 by a hard disk drive interface 636, a memorycard reader interface 638, and anoptical drive interface 640, respectively. The drives and their associated computer-readable media may provide nonvolatile storage of computer-readable instructions, data structures, program modules and other data for thecomputing system 600. - Although the
computing system 600 is described herein as having a hard disk, aremovable memory card 656 and a removableoptical disk 658, it should be appreciated by those skilled in the art that thecomputing system 600 may also include other types of computer-readable media that may be accessed by a computer. For example, such computer-readable media may include computer storage media and communication media. Computer storage media may include volatile and non-volatile, and removable and non-removable media implemented in any method or technology for storage of information, such as computer-readable instructions, data structures, program modules or other data. Computer storage media may further include RAM, ROM, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other solid state memory technology, including a Solid State Disk (SSD), CD-ROM, digital versatile disks (DVD), or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by thecomputing system 600. Communication media may embody computer readable instructions, data structures, program modules or other data in a modulated data signal, such as a carrier wave or other transport mechanism and may include any information delivery media. The term “modulated data signal” may mean a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media may include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. Thecomputing system 600 may also include ahost adapter 633 that connects to astorage device 635 via a small computer system interface (SCSI) bus, a Fiber Channel bus, an eSATA bus, or using any other applicable computer bus interface. - The
computing system 600 can also be connected to arouter 664 to establish a wide area network (WAN) 666 with one or moreremote computers 674. Therouter 664 may be connected to thesystem bus 628 via anetwork interface 644. Theremote computers 674 can also includehard disks 672 that storeapplication programs 670. - In another implementation, the
computing system 600 may also connect to theremote computers 674 via local area network (LAN) 676 or the WAN 666. When using a LAN networking environment, thecomputing system 600 may be connected to theLAN 676 through the network interface oradapter 644. TheLAN 676 may be implemented via a wired connection or a wireless connection. TheLAN 676 may be implemented using Wi-Fi™ technology, cellular technology, Bluetooth™ technology, satellite technology, or any other implementation known to those skilled in the art. Thenetwork interface 644 may also utilize remote access technologies (e.g., Remote Access Service (RAS), Virtual Private Networking (VPN), Secure Socket Layer (SSL), Layer 9 Tunneling (L2T), or any other suitable protocol). These remote access technologies may be implemented in connection with theremote computers 674. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computer systems may be used. - A number of program modules may be stored on the
hard disk 650,memory card 656,optical disk 658,ROM 612 orRAM 616, including anoperating system 618, one ormore application programs 620, andprogram data 624. In certain implementations, thehard disk 650 may store a database system. The database system could include, for example, recorded points. Theapplication programs 620 may include various mobile applications (“apps”) and other applications configured to perform various methods and techniques described herein. Theoperating system 618 may be any suitable operating system that may control the operation of a networked personal or server computer, such as Windows® XP, Mac OS® X, Unix-variants (e.g., Linux® and BSD®), Android®, iOS®, and the like. - A user may enter commands and information into the
computing system 600 through input devices such asbuttons 662, which may be physical buttons, virtual buttons, or combinations thereof. Other input devices may include a microphone, a mouse, or the like (not shown). These and other input devices may be connected to theCPU 630 through aUSB interface 642 coupled tosystem bus 628, but may be connected by other interfaces, such as a parallel port, or game port. - Certain implementations may be configured to interface to sensors in a vessel. In one implementation, the one or
more application programs CPU 630, cause the computing system to perform any of the techniques, or portions thereof, that are described herein. - The detailed description is directed to certain specific implementations. It is to be understood that the discussion above is only for the purpose of enabling a person with ordinary skill in the art to make and use any subject matter defined now or later by the patent “claims” found in any issued patent herein.
- It is specifically intended that the claimed invention not be limited to the implementations and illustrations contained herein, but include modified forms of those implementations including portions of the implementations and combinations of elements of different implementations as come within the scope of the following claims. Nothing in this application is considered critical or essential to the claimed invention unless explicitly indicated as being “critical” or “essential.”
- Reference has been made in detail to various implementations, examples of which are illustrated in the accompanying drawings and figures. In the detailed description, numerous specific details are set forth in order to provide a thorough understanding of the present disclosure. However, it will be apparent to one of ordinary skill in the art that the present disclosure may be practiced without these specific details. In other instances, well-known methods, procedures, components, circuits and networks have not been described in detail so as not to unnecessarily obscure aspects of the implementations.
- It will also be understood that, although the terms first, second, etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first object or step could be termed a second object or step, and, similarly, a second object or step could be termed a first object or step, without departing from the scope of the invention. The first object or step, and the second object or step, are both objects or steps, respectively, but they are not to be considered the same object or step.
- The terminology used in the description of the present disclosure herein is for the purpose of describing particular implementations only and is not intended to be limiting of the present disclosure. As used in the description of the present disclosure and the appended claims, the singular forms “a,” “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will also be understood that the term “and/or” as used herein refers to and encompasses any and all possible combinations of one or more of the associated listed items. It will be further understood that the terms “includes,” “including,” “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components and/or groups thereof.
- As used herein, the term “if” may be construed to mean “when” or “upon” or “in response to determining” or “in response to detecting,” depending on the context. Similarly, the phrase “if it is determined” or “if [a stated condition or event] is detected” may be construed to mean “upon determining” or “in response to determining” or “upon detecting [the stated condition or event]” or “in response to detecting [the stated condition or event],” depending on the context.
- “Alternatively” shall not be construed to only pertain to situations where the number of choices involved is exactly two, but rather refers to another possibility among many other possibilities.
- Additionally, various technologies and techniques described herein include receiving user requests for a number of different operations. In certain instances, the user request for a particular operation will be explicitly described. It shall be understood that a “request” or “can request” shall also include, but are not limited to, touching a screen, double tapping a screen (tapping the screen twice in rapid succession), pressing a particular physical or virtual button, making a selection from a menu, swiping the screen (placing a finger towards an edge of the screen and traversing the screen while maintaining contact between the finger and the screen) placement of a cursor at a particular location, stylus pointing, mouse selection, an audible command, as well as the explicit description of the “request” for the particular operations.
- While the foregoing is directed to implementations of various techniques described herein, other and further implementations may be devised without departing from the basic scope thereof, which may be determined by the claims that follow. Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.
Claims (21)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/450,929 US20170199713A1 (en) | 2014-11-03 | 2017-03-06 | Automatic Data Display Selection |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/531,855 US20160125044A1 (en) | 2014-11-03 | 2014-11-03 | Automatic Data Display Selection |
US15/450,929 US20170199713A1 (en) | 2014-11-03 | 2017-03-06 | Automatic Data Display Selection |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/531,855 Division US20160125044A1 (en) | 2014-11-03 | 2014-11-03 | Automatic Data Display Selection |
Publications (1)
Publication Number | Publication Date |
---|---|
US20170199713A1 true US20170199713A1 (en) | 2017-07-13 |
Family
ID=55852903
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/531,855 Abandoned US20160125044A1 (en) | 2014-11-03 | 2014-11-03 | Automatic Data Display Selection |
US15/450,929 Abandoned US20170199713A1 (en) | 2014-11-03 | 2017-03-06 | Automatic Data Display Selection |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/531,855 Abandoned US20160125044A1 (en) | 2014-11-03 | 2014-11-03 | Automatic Data Display Selection |
Country Status (1)
Country | Link |
---|---|
US (2) | US20160125044A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220217136A1 (en) * | 2021-01-04 | 2022-07-07 | Bank Of America Corporation | Identity verification through multisystem cooperation |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP4070995A1 (en) * | 2021-04-06 | 2022-10-12 | Volvo Truck Corporation | A cab for a heavy-duty vehicle whereby the display function of each screen can be modified and contextualized |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040070627A1 (en) * | 2001-01-04 | 2004-04-15 | Shahine Omar H. | System and process for dynamically displaying prioritized data objects |
US20100005419A1 (en) * | 2007-04-10 | 2010-01-07 | Furuno Electric Co., Ltd. | Information display apparatus |
US20110193715A1 (en) * | 2006-09-29 | 2011-08-11 | Rockwell Automation Technologies, Inc. | Dynamic condition monitoring system with integrated web server |
US20140071059A1 (en) * | 2012-09-10 | 2014-03-13 | Furuno Electric Co., Ltd. | Remote controller for multiple navigation devices |
US20160266246A1 (en) * | 2013-10-23 | 2016-09-15 | Ladar Limited | A system for monitoring a maritime environment |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080046246A1 (en) * | 2006-08-16 | 2008-02-21 | Personics Holding Inc. | Method of auditory display of sensor data |
US20120278759A1 (en) * | 2008-05-07 | 2012-11-01 | Carrot Medical Llc | Integration system for medical instruments with remote control |
US8150950B2 (en) * | 2008-05-13 | 2012-04-03 | Schneider Electric USA, Inc. | Automated discovery of devices in large utility monitoring systems |
US7994931B2 (en) * | 2008-08-01 | 2011-08-09 | Garmin Switzerland Gmbh | Graphical wind gauge |
-
2014
- 2014-11-03 US US14/531,855 patent/US20160125044A1/en not_active Abandoned
-
2017
- 2017-03-06 US US15/450,929 patent/US20170199713A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040070627A1 (en) * | 2001-01-04 | 2004-04-15 | Shahine Omar H. | System and process for dynamically displaying prioritized data objects |
US20110193715A1 (en) * | 2006-09-29 | 2011-08-11 | Rockwell Automation Technologies, Inc. | Dynamic condition monitoring system with integrated web server |
US20100005419A1 (en) * | 2007-04-10 | 2010-01-07 | Furuno Electric Co., Ltd. | Information display apparatus |
US20140071059A1 (en) * | 2012-09-10 | 2014-03-13 | Furuno Electric Co., Ltd. | Remote controller for multiple navigation devices |
US20160266246A1 (en) * | 2013-10-23 | 2016-09-15 | Ladar Limited | A system for monitoring a maritime environment |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220217136A1 (en) * | 2021-01-04 | 2022-07-07 | Bank Of America Corporation | Identity verification through multisystem cooperation |
US12021861B2 (en) * | 2021-01-04 | 2024-06-25 | Bank Of America Corporation | Identity verification through multisystem cooperation |
Also Published As
Publication number | Publication date |
---|---|
US20160125044A1 (en) | 2016-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20160013979A1 (en) | Modifying Marine Electronics Settings | |
US10319356B2 (en) | Transducer array having a transceiver | |
US10025312B2 (en) | Multiple autopilot interface | |
US10290124B2 (en) | Sonar depth display | |
US10311715B2 (en) | Smart device mirroring | |
US20150054732A1 (en) | Controlling Marine Electronics Device | |
US10578706B2 (en) | Wireless sonar receiver | |
US9594374B2 (en) | Operating multiple autopilots | |
US20190141496A1 (en) | Methods and apparatus for capturing data using a marine electronics device | |
US9829321B2 (en) | Forward depth display | |
US9545988B2 (en) | Autopilot navigation | |
US9581695B2 (en) | Generating a map using radar data | |
US20140013260A1 (en) | Export User Data From Defined Region | |
US20140096060A1 (en) | Method for adjusting multi function display settings | |
US20170199713A1 (en) | Automatic Data Display Selection | |
US20180283679A1 (en) | Lighting for Underwater Devices | |
US9728013B2 (en) | Engine detection | |
US9482537B2 (en) | Displaying laylines | |
US8997121B2 (en) | Providing support for position-related applications | |
US20160121990A1 (en) | Reduced Size Tachometer Display | |
US9122366B2 (en) | Residue indicators | |
US20170109908A1 (en) | Using Chlorophyll Data for a Marine Environment | |
US9829573B2 (en) | Sonar auto depth range |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: NAVICO HOLDING AS, NORWAY Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CLARK, JEREMIAH;WILSON, STEPHEN;SIGNING DATES FROM 20160711 TO 20160715;REEL/FRAME:041480/0827 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE AFTER FINAL ACTION FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE AFTER FINAL ACTION FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |