Portable spectrometer device

EP4767033A1Pending Publication Date: 2026-07-01TRINAMIX GMBH

Patent Information

Authority / Receiving Office
EP · EP
Patent Type
Applications
Current Assignee / Owner
TRINAMIX GMBH
Filing Date
2024-08-16
Publication Date
2026-07-01

AI Technical Summary

Technical Problem

Existing portable spectrometer devices struggle to maintain accuracy under changing environmental conditions such as temperature changes or sensor aging, requiring frequent manual calibrations that are inconvenient for users.

Method used

A portable spectrometer device with an integrated processor that determines if a calibration is required based on various factors, such as preset intervals, measurement types, sensor data, and previous measurement results, and triggers the spectrometer module to execute a calibration only when necessary.

Benefits of technology

This approach ensures reliable spectroscopic measurements by minimizing unnecessary calibrations, conserving hardware resources, and allowing for use-case adjusted calibration schemes, thereby speeding up the measurement process without requiring manual user intervention.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000021_0000
    Figure 00000021_0000
  • Figure 00000022_0000
    Figure 00000022_0000
  • Figure 00000023_0000
    Figure 00000023_0000
Patent Text Reader

Abstract

The invention is in the field of portable spectrometer devices. It relates to a spectrometer comprising a. an interface to an application, wherein the interface is configured to receive a request for performing a spectroscopic measurement and to provide spectroscopic measurement results to the application, b. a spectrometer module which is configured to receive electromagnetic radiation and generate spectroscopic data comprising intensity values, wherein each intensity value is indicative of the intensity of the electromagnetic radiation in at least a part of its spectral range, and c. a processor which is configured to trigger the spectrometer module to execute a spectroscopic measurement in response to a request received through the interface and to receive spectroscopic data from the spectrometer module, wherein the processor is further configured to derive composition data from the spectroscopic data and to provide the spectroscopic data and the composition data to the interface.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Portable Spectrometer Device

[0002] The invention is in the area of portable spectrometer devices, for example spectrometers integrated into smartphones. The invention relates to a spectrometer, portable device containing a spectrometer, a method for performing a spectroscopic analysis, a non-transient computer-readable medium, and the use of spectroscopic data and composition data obtained by the spectrometer for providing the composition of an object or a recommendation for acting on the object based on its composition.

[0003] Background

[0004] Spectrometer modules which can be integrated into portable devices like smartphones or tablets will become commercially available soon. These can provide useful information to a user which is not visible to the eye, for example a chemical composition of an object.

[0005] CN 114062 304 A discloses a smartphone with an integrated spectrometer. However, it remains unclear, how the accuracy of the spectrometer can be ensured under changing environmental conditions such as temperature changes or aging of the sensors. Spectrometers need to be calibrated to compensate such effects. However, in a smartphone, it would be very inconvenient for a user to do this manually.

[0006] WO 2018 / 090142 A1 discloses a method of spectrophotometric analysis for a low-resolution spectrophotometric sensor. A mathematical model which compensates the imperfections of a LRSS in comparison to a high-resolution spectrometer. Maintaining the accuracy of the sensor under changing environmental conditions is, however, not addressed by D1.

[0007] Summary

[0008] The objective of the present invention was to provide a spectrometer which provides reliable spectroscopic information under changing environmental conditions without burdening a user with calibration tasks.

[0009] In one aspect the invention relates to a spectrometer comprising a. an interface to an application, wherein the interface is configured to receive a request for performing a spectroscopic measurement and to provide measurement data to the application, b. a spectrometer module which is configured to receive electromagnetic radiation and generate measurement data based on the electromagnetic radiation, and c. a processor which is configured to determine if a calibration is required and if the determination yields that a calibration is required to trigger the spectrometer module to execute a calibration. In another aspect the invention relates to a portable device containing a spectrometer according to the present invention.

[0010] In another aspect the invention relates to a method for performing a spectroscopic analysis comprising a. receiving through an interface to an application a request for performing a spectroscopic measurement, b. in response to the request determining if a calibration is required and if the determination yields that a calibration is required to trigger a spectrometer module to execute a calibration, c. triggering a spectrometer module to execute a spectroscopic measurement, d. receiving from the spectrometer module measurement data, and e. providing the measurement data through the interface to the application.

[0011] In another aspect the invention relates to a non-transient computer-readable medium including instructions that, when executed by one or more processors, cause the one or more processors to determine if a calibration is required and if the determination yields that a calibration is required to trigger a spectrometer module to execute a calibration.

[0012] In another aspect the invention relates to the use of the measurement data obtained by the spectrometer or the process according to any of the preceding claims for providing the composition of an object or a recommendation for acting on the object based on its composition.

[0013] By determining if a calibration is required and triggering the spectrometer module to execute a calibration only in case that the determination yields that a calibration is required a reliable measurement result of the spectrometer is achieved. At the same time, unnecessary calibrations are avoided, so hardware resources are saved, for example battery energy. The invention further enables a use-case adjusted calibration scheme. For use cases which require a high accuracy, calibrations can be executed more often, while hardware resources can be saved for use cases with less accuracy demand. In addition, the measurement can be accelerated, for example in case a measurement series is performed, no calibration in between each measurement may be necessary due to constant conditions. Hence, a minimum number of calibrations is performed, namely only when the determination yields that a calibration is required. There is no manual action required by a user which generally speeds up the process.

[0014] The term "application” may refer to a piece of executable program code which carries out one or more specific tasks which are not related to the operation of the device. An application may contain a user interface, for example a graphical user interface (GUI), to receive input from a user and display information to the user. An application usually makes use of the hardware via programming interfaces, for example a programming interface to the operating system. An application may be preinstalled on the device by the manufacturer of the device or it may be provided by other software providers, for example in an app store, so the user can download and install the application. In the context of the present invention, the application may make use of the spectrometer, i.e. it may process information retrieved from the spectrometer.

[0015] An application may be configured to make fitness and health information available to a user, for example by triggering the spectrometer to measure the skin of the user and making the hydration level of the skin or the blood glucose or lactose content of the skin available to the user. Alternatively or additionally, the application may make recommendations available to the user, for example to drink water according to the hydration level of the skin or adjust the training program according to the lactose level in the blood.

[0016] An application may be configured to make information about agricultural products, food or feed available to a user. The application may trigger the spectrometer to measure an agricultural product, for example a fruit, vegetable, meat, dairy product; food, for example bread, sauces, sausages, sweets; feed like fodder or forage. Upon retrieving the measurement result from the spectrometer the application may make a relevant content, for example the sugar or protein content, available to the user. Alternatively or additionally, the application may make recommendations available to the user, for example the expected date for harvesting to a farmer or a suitable recipe for a cook.

[0017] An application may be configured to make information related to recycling to a user. The application may trigger the spectrometer to measure an object to be recycled, for example a plastic object like a bottle or a metal object like a can. Upon retrieving the measurement result from the spectrometer the application may make a relevant the material the object is made of, for example polyethyleneterephthalate (PET) for a bottle, available to the user. Alternatively or additionally, the application may make recommendations available to the user, for example the most suitable way for recycling the object or the most convenient place put the object so it can be recycled.

[0018] The term "interface” may refer to a shared boundary across which the spectrometer, for example via its firmware or the operating system of the device in which the spectrometer is built into, can exchange information with the application. The interface may be or include an application programming interface (API) configured to receive function calls, messages or other types of invocations which when executed enable information exchange between the application and the spectrometer. In addition, the API may provide the calling program code of the application the ability to use data types or classes defined in the API and implemented in the called program code. The interface can include further functions, for example hardware-specific tools which can communicate with the spectrometer hardware and / or the portable device. Hence, the interface may be, may be part of or may include a software development kit (SDK).

[0019] The interface may be configured to receive a request for performing a spectroscopic measurement. The interface may receive a measurement request for performing a spectroscopic measurement from the application. The interface may be configured to receive measurement requests from more than one application. The interface may be configured to receive more than one measurement request concurrently. Such measurement request may be a function call provided by the interface. Alternatively, a measurement request may be an entry into a request list, for example a queuing file, which is provided by the interface and continuously read by the interface to react to the measurement request. A measurement request may further contain parameters to influence the measurement, for example the sample time of the measurement or a number of how often a measurement shall be repeated.

[0020] The interface may be configured to receive a request for performing a calibration. The interface may receive a request for performing a calibration from the application. The interface may be configured to receive calibration requests from more than one application. The interface may be configured to receive more than one calibration request concurrently. Such calibration request may be a function call provided by the interface. Alternatively, a calibration request may be an entry into a calibration request list, for example a queuing file, which is provided by the interface and continuously read by the interface to react to the calibration request. A calibration request may further contain parameters to influence the calibration, for example the type of calibration or the sample time of the calibration.

[0021] The measurement or calibration request may be forwarded to the spectrometer module to trigger a measurement or calibration. The measurement or calibration request may be directly forwarded from the interface to the firmware of the spectrometer module. The measurement or calibration request may be forwarded from the interface to an operating system which may forward the measurement or calibration request to the firmware of the spectrometer module.

[0022] The operating system may contain a hardware abstraction layer (HAL) and a kernel. The HAL may be executed in user space of the processor, i.e. with limited memory access, for example the user space in virtual memory, and the kernel may be executed in kernel mode of the processor, i.e. without limited memory access, for example in kernel space in virtual memory.

[0023] Hence, the measurement or calibration request may be forwarded from the interface to an HAL of the operating system which may forward it to the kernel of the operating system which may forward it to the firmware of the spectrometer module. Each instance may modify the measurement or calibration request in a way that it is compatible to the next instance.

[0024] The HAL may receive standardized, i.e. hardware-independent, function calls or messages and converts them to hardware-specific ones. The HAL may be a passthrough HAL or a binderized HAL. The HAL may contain a spectroscopy HAL which is dedicated to provide a software interface to spectroscopy hardware, such as an interface to the spectroscopy hardware driver.

[0025] The spectroscopy HAL may provide functions and hardware accesses which are specific to spectroscopy hardware.

[0026] One example is invoking the calibration function of a spectroscopy module. The kernel of the operating system may contain a driver for the spectrometer module. The kernel may receive the measurement or calibration request from the HAL and may generate hardware-specific code to trigger the spectroscopy module to execute a measurement or calibration. The kernel may forward the request to the firmware of the spectroscopy module.

[0027] The firmware controls the actual functionality of the spectroscopy hardware, for example the analogue to digital conversion of the sensor signals.

[0028] The firmware may further provide metadata and / or calibration coefficients. Metadata may relate to sensor data, for example the temperature measured at or close to the spectroscopy module or movement data measured during the spectroscopy measurement, such as by a gyroscope.

[0029] Calibration coefficients may relate to values usable for correcting the output of the spectroscopy module to compensate for fabrication imperfections or drifts over time. Calibration coefficients may originate from a test just after production of the spectroscopy module, such as an end-of-line test, or from a calibration which has been performed in between two spectroscopy measurements. The interface to the application may be configured to provide metadata and / or calibration coefficients from the spectrometer module to the application. The metadata and / or calibration coefficients may be forwarded from the firmware to the interface, for example via the kernel and / or a HAL.

[0030] The spectrometer comprises a spectrometer module. The spectrometer module contains hardware which is configured to receive electromagnetic radiation and generate measurement data. The term "measurement data” may refer to data which is either directly obtained from the spectrometer module or derived from such data. Measurement data may contain spectroscopic data.

[0031] The term "spectroscopic data” may refer to data comprising intensity values, wherein each intensity value is indicative of the intensity of the electromagnetic radiation in at least a part of its spectral range. The spectroscopic data may hence contain a set of value pairs, wherein a pair contains a value indicative of the spectral range, i.e. the wavelength or the wavelength range of the electromagnetic radiation, and a value indicative of the corresponding intensity of the electromagnetic radiation. The spectroscopic data may contain the direct output values of the sensors, sometimes referred to raw data, or it may contain adjusted values, for example corrected with calibration coefficients.

[0032] The spectrometer module may comprise a spectrometer module processor, i.e. a processor in addition to the processor comprised in the spectrometer. The spectrometer module processor may execute the firmware of the spectrometer module. The firmware is described above. The spectrometer module may further comprise memory. The memory may store the firmware and / or calibration coefficients. The memory may be part of the spectrometer module processor. The spectrometer module processor may be a microcontroller or an application specific integrated circuit (ASIC).

[0033] The processor is configured to determine if a calibration is required. The term "calibration” may refer to an operation that, under specified conditions, in a first step, establishes a relation between the quantity values with measurement uncertainties provided by measurement standards and corresponding indications with associated measurement uncertainties of the calibrated spectrometer and, in a second step, uses this information to establish a relation for obtaining a measurement result from an indication. Calibration may compensate changes occurring in the spectrometer module, for example due to slight changes of the position of the components of the spectrometer module to each other, for example due expansions and contractions due to temperature changes, or due to wear of components, for example the photosensitive detector in the spectrometer module. Hence, calibration may ensure the spectrometer module outputs the same spectroscopic data under the same illumination conditions independent of changing environmental conditions, such as temperature or sensor aging. Calibration may hence compensate hardware-related changes, for example by determining and applying calibration coefficients.

[0034] The determination if a calibration is required may be based on a preset interval. For example, the determination may involve checking if the preset interval has expired and if yes to trigger a calibration. The interval may be preset by the manufacturer of the spectrometer. Alternatively, the interval may be set by the application or by a user, for example via an interface function call or by a configuration setting, for example a configuration file. An interval may be a time interval, for example one calibration is required every 24 hours or every seven days. An interval may be a number of measurements, for example one calibration is required after every five or ten measurements.

[0035] The determination if a calibration is required may be based on the type of measurement, wherein the type of measurement may refer to the object to be measured and / or the purpose of the measurement. The determination may involve determining the degree of accuracy required for the type of measurement and triggering a calibration if a preset degree of accuracy is exceeded. For example, a data set may be provided in which each type of measurement is assigned to a degree of required accuracy. For example, a medical measurement like blood glucose measurement may require a higher accuracy than a measurement food analysis in a supermarket. The degree of accuracy for the type of measurement may be stored in memory of the spectrometer or it may be provided by the application through the interface or it may be obtained from a remote system, for example a cloud system, through a communication interface.

[0036] The determination if a calibration is required may be based on sensor data. Sensor data may comprise values having a potential impact on the spectrometer, i.e. which may cause a signal drift. Sensor data may include temperature from a thermometer, humidity from a hygroscope, motion from a motion sensor like a gyroscope, pressure from a pressure gauge, light from a light sensor or chemical data like composition of the surrounding air from a spectroscope, which can be a previous measurement of the spectrometer to be calibrated. For example, a calibration may be triggered if one or more than one value of the sensor data have changed compared to the sensor data from the last calibration. The sensor data may be obtained from sensors attached to or comprised in the spectrometer. Alternatively, sensor data may be obtained from a remote system, for example a cloud system. The remote system may obtain the sensor data from the spectrometer to calibrated or from a different device which is in the same location. It is also possible to receive sensor data from central measurement stations, like weather stations.

[0037] The determination if a calibration is required may be based on previous measurement results of the spectrometer. A quality indicator may be extracted from the previous measurement results, for example a signal-to-noise ratio, a correlation of signals or probability values from a chemometric model indicating the likelihood that a component derived from the spectrum is correct. The determination may be based only on the previous measurement or on more than one of the previous measurements.

[0038] The determination if a calibration is required may be based on previous calibration results. The determination may be based on a distance between the previous calibration and the calibration before the previous calibration. For example, if the previous calibration has been close to the calibration before the previous one, it may be determined that no calibration is required. A calibration may be required if the distance exceeds a certain distance, for example a preset value stored on the spectrometer or a value provided by the application through the interface.

[0039] The determination if a calibration is required may be based on a combination of the above-mentioned influencing factors. The determination may be based on a combination of an interval and the type of measurement. The determination may be based on a combination of an interval and sensor data. The determination may be based on a combination of an interval and previous measurement results of the spectrometer. The determination may be based on a combination of an interval and previous calibration results. The determination may be based on a combination of the type of measurement and sensor data. The determination may be based on a combination of the type of measurement and previous measurement results. The determination may be based on a combination of the type of measurement and previous calibration results.

[0040] The determination may be based on a combination of sensor data and previous measurement results of the spectrometer. The determination may be based on a combination of sensor data and previous calibration results. The determination may be based on a combination of previous measurement results of the spectrometer and previous calibration results. A determination based on a combination may involve a score, for example calculated by weighing and combining the influencing factors. If the score exceeds a preset threshold, a calibration may be required.

[0041] The determination if a calibration is required may be triggered in various ways. The determination may be triggered by the startup routine of the spectrometer. This may be particularly useful if the spectrometer is used only occasionally and thus switched off and on regularly. The determination may be triggered by a fixed time period, for example every hour by a hardware clock interrupt. The determination may be triggered by an application, for example through the interface by a function call. Preferably, the determination is triggered by a request for a measurement. Hence, in response to the measurement request it is determined if a calibration is required and if so, a calibration is executed prior to the execution of the measurement. The code for determination if calibration is required may be part of the HAL of the operating system.

[0042] Calibration can be performed in various ways. Calibration may involve a reference target which is measured instead of a sample. A reference target may have a highly reproducible reflectance behavior. The reference target may have a high reflectivity within the wavelength range of the spectrometer, sometimes also referred to a white reference target. Other reference targets may be applied, for example reference targets with a characteristic reflectance behavior which is different for different wavelengths. The reference target may be a separate piece which needs to be placed in front of the spectrometer. Alternatively, the spectrometer module comprises a reference target. In this case, the spectrometer module may contain optics capable of directing radiation from the radiation source to the reference target and which is further capable of directing radiation reflected by the reference target to the photosensitive detector.

[0043] Calibration may be performed by directing radiation from the radiation source directly onto the photosensitive detector. The spectrometer module may hence comprise optics capable of directing radiation from the radiation source to the photosensitive detector, for example a mirror or a lens. In case of a mirror, it is possible to use the characteristic reflectance of the mirror for calibration. The spectroscopy module may contain a window which partially transmits the radiation from the radiation source to the sample and partially reflects the radiation from the radiation source to the photosensitive detector. The window may comprise or consist essentially of or consist of an optical glass, for example silica glass, phosphate glass, aluminosilicate glass, or silicon. Many of such materials exhibit Fresnel reflection characteristics, i.e. a window containing said materials may reflect radiation at certain wavelengths in well-defined ratios which are often independent of the temperature. During sample measurement, such reflected radiation may be subtracted from the measurement or it may be blocked by optics, for example a shutter or an aperture.

[0044] Calibration involving a reference target or directing radiation from the radiation source directly onto the photosensitive detector yields a detector signal which can be correlated to the known intensity of the incoming radiation. This correlation may be used to generate calibration coefficients. The calibration coefficients may be used to correct the detector signals.

[0045] Calibration may be performed by avoiding any incoming radiation onto the photosensitive detector, sometimes also called dark calibration. Avoiding incoming radiation may involve removing any sample from the spectrometer, switching off the radiation source or blocking any incoming light, for example by an aperture or a shutter. Alternatively, the spectrometer module may contain one or more than one photosensitive detectors which never receive any incoming radiation, for example by covering them with an absorbing or reflecting material. The signal of a photosensitive detector which temporarily or permanently does not receive any incoming radiation may be used as background signal. The background signal may be subtracted from the signal upon measurement. The background signal may also serve to determine calibration coefficients. The calibration coefficients may be used to correct the detector signals.

[0046] The spectrometer may be configured to allow more than one type of calibration, for example a calibration involving a reference target and dark calibration. Determining if a calibration is required may further comprise determining which type of calibration is required. Such determination may be based on the parameters described above for determining if a calibration is required. For example, determining which calibration is required may be based on a first preset time period for the calibration involving a reference target and a second preset time period for a dark calibration.

[0047] In case a calibration is triggered, any measurement request may be blocked, i.e. will not be passed to the spectrometer module before the calibration is completed. Blocking may be achieved by putting any measurement request into a wait queue until the calibration is complete. Once the calibration is complete, any measurement request from the wait queue may be passed to the spectroscopy module.

[0048] The measurement data may be passed to the interface. The measurement data may be read out from the spectrometer hardware by the firmware. It may be passed to the kernel of the operating system which may contain a driver for the spectroscopy module. The kernel of the operating system may pass the measurement data to the HAL of the operating system. The HAL of the operating system may further pass the measurement data to the interface. The interface may further pass the measurement data to the application having requested the measurement.

[0049] The measurement data may further contain composition data. Composition data may be determined from the spectroscopic data. The term "composition data” may refer to data related to the composition of the object which was measured. The composition data may contain information about the object's content of one or more than one chemical compound, for example water, glucose, PET, or a group of chemical compounds, for example the protein, starch, aromatic hydrocarbons. The composition data may alternatively or in addition contain information derived from the content of one or more than one compound of an object which was measured, for example the fitness or health condition of a person, the maturity level of an agricultural product or the quality level of a consumable material, for example a lubricant in a machine. The composition data may also contain a recommendation based on the content of one or more than one compound in the measured object, for example to apply a certain fertilizer to the measured soil based on its minerals content or to administer a dose of insulin based on the blood glucose level. The composition data may further contain a value indicating the confidence of the determined information, for example a percentage, wherein a high value indicates a high confidence, for example that a sample is made of a certain plastic. The value indicating the confidence may be determined based on the deviation of the spectroscopic data from a calibration sample or the relative distance of the spectroscopic data to calibration samples of a different composition.

[0050] The composition data may be derived from the spectroscopic data by using a chemometric model. The term "chemometric model” may refer to a model which uses spectroscopic data as input and outputs composition data. The chemometric model may be a mechanistic model, a data-driven model or a hybrid model. The mechanistic model may reflect physical phenomena in mathematical form, e.g., including first-principle models. A mechanistic model may comprise a set of equations that describe an interaction between the material and the electromagnetic irradiation thereby resulting in at least one target value and / or model-based reference value.

[0051] The chemometric model may be a data-driven model which is parametrized according to spectroscopic data and may be trained with historical data. Historical data contains datasets including spectroscopic data and associated chemometric data. Historical data may be obtained by measuring samples for which the composition data is available, for example from analytical measurements, for example by subjecting a sample to a destructive laboratory technique like gas chromatography. A dataset may then be obtained by associating the obtained spectroscopic data with the composition data obtained or derived from analytical measurement.

[0052] The data-driven model may be a classification model. The classification model may comprise at least one machinelearning architecture and model parameters. For example, the machine-learning architecture may be or may comprise one or more of: linear regression, logistic regression, random forest, piecewise linear, nonlinear classifiers, support vector machines, naive Bayes classifications, nearest neighbors, neural networks, convolutional neural networks, generative adversarial networks, support vector machines, or gradient boosting algorithms or the like. In the case of a neural network, the model can be a multi-scale neural network or a recur-rent neural network (RNN) such as, but not limited to, a gated recurrent unit (GRU) recurrent neural network or a long short-term memory (LSTM) recurrent neural network.

[0053] The spectrometer may have access to one chemometric model or to more than one chemometric models. In case of more than one chemometric models, each chemometric model may be optimized for a particular use case, for example one is optimized for determining blood glucose from skin measurements, one for determining acid in fruit, and another one for determining protein in feed.

[0054] The chemometric model to be used for a specific measurement may be selected by the application. The application may submit a parameter indicating the chemometric model to be used as part of the measurement request to the interface. Alternatively, the application may set a global variable, for example in a configuration file, for a series or all of its measurements. This may make sense if one application is exclusively dedicated to a specific use case. Alternatively, the chemometric model may be selected by the spectrometer. The processor may be configured to select a chemometric model for deriving composition data from spectroscopic data based on additional sensor data. For example, the spectrometer may receive an optical image of the sample. This may be particularly useful if the spectrometer is part of a smartphone which is equipped with a camera. The image may be analyzed to detect the type of sample, for example the shape, the color or the surface shininess may be extracted from the image and compared to reference values for different samples for which chemometric models are available. The spectrometer may select the chemometric model based on the closest fit. If no suitable chemometric model is found, an error message may be generated and passed to the application via the interface. The error message may invite the application to provide information of the sample or repeat the measurement request.

[0055] Selecting the chemometric models may be based on a machine learning model. The machine learning model may have as input one or more of the user using the spectrometer, the time of the day, the sample history, motion data from a respective sensor, temperature, surrounding light. The machine learning model may have the type of sample or the chemometric model as output. The machine learning model may be pretrained or it may learn based upon feedback by a user.

[0056] The spectrometer comprises a spectrometer module which is configured to receive electromagnetic radiation. The term "electromagnetic radiation” may refer to radio waves, microwaves, infrared light, visible light, ultraviolet light, X- rays, or gamma rays. Infrared light may be near-infrared with a wavelength of 0.75 to 1 .4 pm, short-wavelength infrared with a wavelength of 1 .4 to 3 pm, mid-wavelength infrared with a wavelength of 3 to 8 pm, long-wavelength infrared with a wavelength of 8 to 15 pm or far infrared with a wavelength of 15 to 1000 pm. For example, the spectrometer module may be configured to receive electromagnetic radiation of wavelength 1 to 3 m.

[0057] The spectrometer module may contain a radiation source. The term "radiation source” may refer to a device that generates and / or emits electromagnetic radiation, for example electromagnetic radiation in the wavelength range described above. The radiation source may be configured for illuminating an object. The radiation source may be or comprise a thermal radiator or a semiconductor-based radiation source. The at least one semiconductor-based radiation source may be a light emitting diode (LED) or a laser, in particular a laser diode. The thermal radiator may be an incandescent lamp or a thermal infrared emitter.

[0058] The spectrometer module is configured to generate measurement data, in particular spectroscopic data. The spectrometer module may contain a photosensitive detector. The term "photosensitive detector” may refer to a device which generates an electrical signal in response to receiving electromagnetic irradiation. The photosensitive detector may contain one or more than one photosensitive region, wherein each photosensitive region may generate a separate electrical signal indicative for the intensity of the electromagnetic irradiation impinging onto the photosensitive region. The photosensitive detector may be an inorganic camera element, such as an inorganic camera chip, a CCD chip or a CMOS chip. The photosensitive detector may comprise a photoconductive material, in particular an inorganic photoconductive material, especially selected from lead sulfide (PbS), lead selenide (PbSe), germanium (Ge), indium gallium arsenide (InGaAs, including but not limited to ext. InGaAs, i.e. InGaAs which exhibits a spectral response up to 2.6 pm), indium antimonide (InSb), or mercury cadmium telluride (HgCdTe or MCT).

[0059] The photosensitive detector may contain multiple photosensitive regions, for example an array of photosensitive regions, wherein electromagnetic radiation of different wavelength impinges on the photosensitive regions. For this reason, the spectrometer module may contain a dispersive element, such as a prism or a grating. The spectrometer may contain one or more than one optical filters, for example a linear variable filter or multiple filters transmit different wavelengths of the electromagnetic radiation for different photosensitive regions. The dispersive element or the filter may be arranged such that electromagnetic radiation of different wavelength impinges on the multiple photosensitive regions. The photosensitive detector may contain multiple photosensitive regions, wherein the photosensitive regions are covered by filters, wherein the filters transmit electromagnetic radiation of different wavelengths.

[0060] The photosensitive detector may contain only one photosensitive region. Light of different wavelength may impinge on this one photosensitive region at different points in time. For this reason, the spectrometer module may contain an interferometer, for example a Michelson interferometer. The interferometer may be arranged such that it receives the incoming electromagnetic radiation and directs the electromagnetic radiation having passed the interferometer to the photosensitive region. The interferometer may also be placed between the radiation source of the spectrometer module and the object to be measured, so the wavelength of the electromagnetic radiation received by the spectrometer module varies with time.

[0061] The electric signal from the detector may be analog or digital. If it is analog, it may be converted into a digital signal. Therefore, the spectrometer module may contain an analog-to-digital converter (ADC). The spectroscopy module may contain a controller. The controller may contain ADC functionality. The controller may provide the spectroscopic data. The spectroscopic data may contain some or all of the electric signals. The spectroscopic data may further contain the wavelength or wavelength range of the electromagnetic radiation associated with the electric signal. The information about the wavelength or wavelength range may be obtained by identifying which photosensitive region the electric signal originates from and a stored value indicating a wavelength or wavelength region for this photosensitive region, for example by providing the filter information of the filter on the particular photosensitive region.

[0062] The spectrometer comprises a processor configured to configured to trigger the spectrometer module to execute a spectroscopic measurement in response to a request received through the interface. The processor may be configured to execute the functionality of the spectrometer described above. The processor may execute program code to execute the functionality, for example forward the request from the interface to the spectrometer module. The program code may contain code for the interface. The program code may further comprise code for an HAL and a kernel. Alternatively or additionally, the processor may be configured to execute code which triggers execution of parts of the functions or all functions on a remote computer via a communication interface. The remote computer may be part of a cloud computing environment.

[0063] In another aspect, the invention relates to a portable device containing a spectrometer according to the present invention. The term "portable device” may refer to a device having dimensions and weight which allow a human to carry the portable device without major physical effort. The portable device may be a smartphone, a tablet or a wearable. The wearable may be a wristwatch, a wristband, a hearing aid, a ring, a belt, a necklace, an ankle band, a thigh band, or a forearm band. The spectrometer may be fully integrated into the portable device, i.e. all parts of the spectrometer are contained in the portable device. Parts of the spectrometer, for example the processor, may be shared with other functionalities in the portable device.

[0064] Alternatively, one or more than one components of the spectrometer may be physically placed outside the portable device and may be communicatively coupled to the portable device. The portable device may contain a communication interface, for example a telecommunication interface or a Bluetooth interface. The communication interface may enable data flow between components of the spectrometer outside the portable device and the portable device. The portable device may be communicatively connected to a cloud computing system. The cloud computing system may execute parts or all of the data processing of the spectrometer, for example derive composition data from the spectroscopic data. The portable device may send via the communication interface spectroscopic data to a cloud system, the cloud system derives composition data from the spectroscopic data, for example by using a chemometric model, and send the composition data back to the portable device.

[0065] The spectrometer module may be a separate spectrometer module device, for example a hand-held measurement head. The spectrometer module device may be communicatively coupled to the portable device, for example by a Bluetooth interface. The portable device may send a measurement request from the application to the spectrometer module device via a communication interface. The spectrometer module device may send spectroscopic data to the portable device by a communication interface.

[0066] Brief Description of the Figures

[0067] Figure 1 shows an embodiment of the data flow in the spectrometer of the present invention.

[0068] Figure 2 shows a more detailed embodiment of the data flow in a spectrometer of the present invention.

[0069] Figure 3 shows an example for a portable device with an integrated spectrometer module. Figure 4 illustrates an example for a portable device communicatively coupled to a spectrometer module.

[0070] Description of Embodiments

[0071] Figure 1 illustrates an embodiment of the data flow in a spectrometer (100) of the present invention. The spectrometer (100) contains an interface (101) to an application (110). The interface may be an API containing a function calls. The interface (101) may receive a measurement request (111) from the application (101). The measurement request (111) may be a function call provided by the API provided to trigger a measurement of the spectrometer (100), for example spectrometer.startMeasurement(). The measurement request (111) may in addition contain parameters, for example measurement variables like the sample time. The measurement request (111) may be forwarded from the interface (101) to the spectrometer module (102). Such forwarding may be accomplished by a processor of the spectrometer which is not depicted in Figure 1 .

[0072] The spectrometer may determine if a calibration is required (104). The determination may be triggered by the measurement request (111). The determination may be based on an interval, i.e. how long ago was the last calibration executed, the type of measurement, sensor data, previous measurement results, previous calibration results or combinations thereof.

[0073] The spectrometer module may in response to the measurement request perform a measurement and in case of successful completion of the measurement provide spectroscopic data (103). The measurement data (103) may contain spectroscopic data. Spectroscopic data may be an array of value pairs, each pair containing the wavelength or a wavelength range of the electromagnetic radiation and the intensity of the electromagnetic radiation at this wavelength of wavelength range. The spectroscopic data may relate to the uncorrected measurement values or corrected ones, for example corrected based on calibration coefficients.

[0074] The measurement data (103) may further contain composition data. Composition data may be obtained based on the spectroscopic data using a chemometric model. The chemometric model may be parametrized according to the spectroscopic data, so it can use the spectroscopic data as input and output composition data. There may be more than one chemometric models available, so the application (100) may have chosen one, for example as parameter of the measurement request or via a registration file. The interface (101) may provide the selection of the chemometric model which is used for determining the composition data. For example, the application (100) may be supposed to display the sugar content of an apple to a user. The application (100) may therefore provide the information that the sugar content of an apple shall be determined to the interface (101). The interface (101) may provide an appropriate function call or a setup value or file to the application (110). The suitable chemometric model may be selected based on the information provided to the interface (101). The chemometric model may output the composition data, for example the sugar content in g / kg and a confidence level indicating the expected accuracy and / or precision of the measurement result. The interface (101) may receive the measurement data (103) and forward it to the application. This may be achieved by returning such data or a pointer to such data to the measurement request. Alternatively, the interface (101) may write the measurement data (103) to a place in memory where the application (110) has read access so it can use the data.

[0075] Figure 2 illustrates a more detailed embodiment of the data flow in a spectrometer (200) of the present invention. To the extent that the components correspond to those in figure 1, the description of figure 1 applies also to figure 2. The interface (201) may receive a measurement request (211) from an application (210). The measurement request (211) may be forwarded to the hardware abstraction layer, HAL (202). The HAL may determine if a calibration is required and if so forward a calibration request (207 to the kernel. The kernel may forward the calibration request (211) to the spectroscopy module (204), for example by using the appropriate spectroscopy module driver built into the kernel. The spectroscopy module (204) may receive the calibration request (207) via its firmware (205). The firmware (205) may trigger the spectroscopy hardware (206) to execute a calibration. Once the calibration completes, the firmware (205) may collect the calibration data (208) and provide it to the kernel (203).

[0076] Alternatively, the firmware (205) stores the calibration data internally and only returns message indicating the completion of the calibration to the kernel (203). The firmware (205) may accomplish that by writing to registers of the spectroscopy module (204) which can be read by the spectroscopy module driver built into the kernel (203). The kernel (203) may pass the calibration data (208) or the completion message to the HAL (202). The HAL (202) may update the calibration coefficients.

[0077] In response to the completed calibration the HAL (202) may forward the measurement request (211) to the kernel (203). The kernel may forward the measurement request (211) to the spectroscopy module (204), for example by using the appropriate spectroscopy module driver built into the kernel. The spectroscopy module (204) may receive the measurement request (211) via its firmware (205). The firmware (205) may trigger the spectroscopy hardware (206) to execute a measurement. Once the measurement completes, the firmware (205) may collect the measurement data (209) and provide it to the kernel (203). The firmware (205) may accomplish that by writing to registers of the spectroscopy module (204) which can be read by the spectroscopy module driver built into the kernel (203).

[0078] The kernel (203) may pass the measurement data (209) to the HAL (202). The HAL may contain code for one or more than one chemometric models for obtaining composition data from the spectroscopic data contained in the measurement data (209). The HAL may add the composition data to the spectroscopic data in the measurement data (209) or replace it. The HAL may pass the measurement data (209) to the interface (201) which makes it available to the application (210) having sent the measurement request (211). Figure 3 illustrates an example for a portable device (300) with an integrated spectrometer module (310). The portable device (300) may be a smartphone, a tablet or a wearable such as a smartwatch. The spectrometer module (310) may contain an illumination (311). The illumination (311) may be a light source, for example an incandescent lamp or an LED. The light source may produce electromagnetic radiation in the desired range, for example in the near infrared range. The illumination (311) may further contain optics to direct the electromagnetic radiation from the light source to the object, for example lenses, mirrors and / or apertures. The illumination (311) may be communicatively coupled to a controller (313). The controller may supply electric power, e.g. from the battery of the portable device (300), and switch the light source of the illumination (311) on and off when required.

[0079] The spectrometer module may further contain a detector (312). The detector (312) may generate electric signals in response to electromagnetic irradiation impinging on the sensor.

[0080] The detector (312) may contain an array of photosensitive regions. Each photosensitive region may be covered by a filter such that electromagnetic radiation of a dedicated wavelength or wavelength range impinges on a photosensitive region. The photosensitive region may be sensitive in the wavelength region of interest, for example in the near infrared region. The photosensitive region may contain a photoconductor, for example PbS or PbSe. The photosensitive region may generate an electric current which is indicative of the intensity of the electromagnetic radiation impinging on the photosensitive region. The detector (312) may contain optics to collect a maximum of incoming electromagnetic radiation. The optics may include mirrors, lenses and / or apertures.

[0081] The detector (312) may be communicatively coupled to the controller (313). The controller (313) may collect the signal or the signals from the detector (312) and forward these to the processor (330). The controller (313) may convert the signal or signals from analog to digital. This may, for example, be accomplished by integrating the electric current obtained from each photosensitive region and providing a value of the result in a digital form. By combining these values with the origin of the photosensitive region each of which measures the electromagnetic radiation at a particular wavelength or wavelength region, the controller (313) may gather spectroscopic data and forward these to the processor (330).

[0082] The processor (330) may execute the code for the method described above. The processor (330) may obtain the code from memory (320). The processor (330) may in this example execute both code of the spectrometer, in particular the determination of composition data based on spectroscopic data, for example by executing a chemometric model, and the application which receives both composition data and spectroscopic data from the interface of the spectrometer. The portable device (300) may further contain a display (340) for collecting user input and display measurement results, for example via a graphical user interface (GUI). Such GUI may be part of the application using the composition data and / or the spectroscopic data. The GUI may also be part of the interface of the spectrometer, for example it may be contained in an API provided by the spectrometer which the application can use and / or adjust for its purposes.

[0083] Figure 4 illustrates an example for a portable device (400) communicatively coupled to a spectrometer module (450). To the extent that the components correspond to those in figure 3, the description of figure 3 applies also to figure 4. The spectrometer module (450) may contain an illumination (451) for illuminating a sample in the desired wavelength range. The detector (452) may receive the electromagnetic radiation from the sample and generates signals indicating the intensity of the electromagnetic radiation impinging on the detector. The controller (453) may be communicatively coupled to the illumination (451) and the detector (452). The controller (453) may supply power to illumination (451) and the detector (452), switch the illumination (451) on and off as required, read out the detector signals from the detector (452) and / or convert the detector signals from analog to digital.

[0084] The spectrometer module (450) may further contain a communication interface (454). The communication interface (454) may be communicatively coupled to the controller (453). The communication interface (454) may receive measurement requests and transmit spectroscopic data to the portable device (400). The portable device (400) may contain a communication interface (430) to transmit measurement requests and receive spectroscopic data from the spectrometer module (450). The communication interfaces (430, 450) may be a cable, for example a USB cable, or a wireless communication interface, for example an infrared communication interface, a Bluetooth interface, a wireless LAN interface, or a telecommunication interface.

[0085] The portable device (400) may contain a processor (420), for example a CPU, which is communicatively coupled to the communication interface (430) and memory (410). The processor (420) may execute code stored on the memory (410). The processor (420) may execute code for the application which submits a measurement request to the interface. The processor (420) may execute code for the interface and / or for obtaining composition data from the spectroscopic data. The portable device (400) may contain a display (440) which may display a GUI to receive input to trigger a measurement and / or displaying the result of the measurement. The GUI may be part of the application or it may be part of the interface providing such functionality as API to the application.

[0086] Other variations to the disclosed embodiments can be understood and effected by those skilled in the art in practicing the claimed invention, from a study of the drawings, the disclosure, and the appended claims.

[0087] For the processes and methods disclosed herein, the operations performed in the processes and methods may be implemented in differing order. Furthermore, the outlined operations are only provided as examples, and some of the operations may be optional, combined into fewer steps and operations, supplemented with further operations, or expanded into additional operations without detracting from the essence of the disclosed embodiments. In the claims, the word "comprising" does not exclude other elements or steps, and the indefinite article "a" or "an" does not exclude a plurality. A single unit or device may fulfill the functions of several items recited in the claims. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used to advantage.

Claims

Claims1 . A spectrometer comprising a. an interface to an application, wherein the interface is configured to receive a request for performing a spectroscopic measurement and to provide measurement data to the application, b. a spectrometer module which is configured to receive electromagnetic radiation and generate measurement data based on the electromagnetic radiation, and c. a processor which is configured to determine if a calibration is required and if the determination yields that a calibration is required to trigger the spectrometer module to execute a calibration.

2. The spectrometer according to claim 1 , wherein the processor is configured to determine if a calibration of the spectrometer is required in response to a measurement request and if the determination yields that a calibration is required to trigger the spectrometer module to execute a calibration before triggering the spectrometer module to execute a spectroscopic measurement.

3. The spectrometer according to claim 1 or 2, wherein the determination if a calibration is required is based on a preset interval, the type of measurement, sensor data, previous measurement results of the spectrometer or previous calibration results.

4. The spectrometer according to any of the claims 1 to 3, wherein the spectrometer is configured to allow more than one type of calibration and determining if a calibration is required further comprises determining which type of calibration is required.

5. The spectrometer according to any of the claims 1 to 4, wherein the measurement data contains spectroscopic data and composition data.

6. The spectrometer according to any of the claims 1 to 5, wherein the spectrometer module is configured to receive electromagnetic radiation of wavelength 1 to 3 pm.

7. The spectrometer according to any of the claims 1 to 6, wherein the spectrometer module contains a photosensitive detector containing multiple photosensitive regions, wherein the photosensitive regions are covered by filters, wherein the filters transmit electromagnetic radiation of different wavelengths8. A portable device containing a spectrometer according to any of the previous claims.

9. The portable device according to claim 8, wherein the portable device is a smartphone, a tablet or a wearable, wherein the spectrometer is fully integrated into the portable device.

10. A method for performing a spectroscopic analysis comprising a. receiving through an interface to an application a request for performing a spectroscopic measurement, b. in response to the request determining if a calibration is required and if the determination yields that a calibration is required to trigger a spectrometer module to execute a calibration, c. triggering a spectrometer module to execute a spectroscopic measurement, d. receiving from the spectrometer module measurement data, and e. providing the measurement data through the interface to the application.11 . The method according to claim 10, wherein the interface is configured to receive measurement requests from more than one application.

12. The method according to claim 10 or 11, wherein the interface is or includes an application programming interface.

13. A non-transient computer-readable medium including instructions that, when executed by one or more processors, cause the one or more processors to determine if a calibration is required and if the determination yields that a calibration is required to trigger a spectrometer module to execute a calibration.

14. Use of the measurement data obtained by the spectrometer or the process according to any of the preceding claims for providing the composition of an object or a recommendation for acting on the object based on its composition.

15. Use according to claim 14, wherein the measurement data is used in an application making make fitness and health information, information about agricultural products, food or feed or information related to recycling available to a user.