-
HINTERGRUND
-
Die vorliegende Erfindung bezieht sich auf die Bereiche Elektrotechnik, Elektronik und Computer, insbesondere auf Verfahren zum Erkennen gefälschter Arzneimittel.
-
Die Fälschung von Arzneimitteln kommt in vielen Formen und auf vielen Stufen der pharmazeutischen Lieferkette vor. Gefälschte Arzneimittel, von Kopien von Markenmedikamenten und generischen Medikamenten bis hin zu rezeptfreien Medikamenten und ähnlichem, wurden ohne aktive Inhaltsstoffe oder mit gefährlichen Verunreinigungen entdeckt. Die US Food and Drug Administration schätzt, dass fast 15 % der importierten Arzneimittel nicht zugelassene Substanzen umfassen. Gemäß der Weltzollorganisation ist die Fälschung von Arzneimitteln zu einem jährlichen Geschäft von 75 bis 200 Milliarden Dollar geworden. Die Länder haben Gesetze zur Nachverfolgung von Produkten auf ihrem Weg durch die Lieferkette eingeführt, und bis Anfang 2018 werden gemäß einem Bericht von PMMI (The Association for Packaging and Processing Technologies, früher bekannt als Packaging Machinery Manufacturers Institute) mehr als 75 % der verschreibungspflichtigen Arzneimittel weltweit gesetzlich geschützt sein.
-
Fälschungen können theoretisch an jedem Punkt der Lieferkette auftreten. So können beispielsweise in der Distributionsphase Laser verwendet werden, um Verpackungen zu öffnen, und gefälschte Arzneimittel können als Ersatz für echte Arzneimittel eingesetzt werden. Das Erkennen von Arzneimittelfälschungen ist zudem mit einer Reihe von Problemen verbunden. Häufig mangelt es an der Koordination auf allen Stufen und Ebenen der Lieferkette. Die Transparenz der Lieferkette, die sich über ein großes geografisches Gebiet erstrecken kann, ist oft begrenzt. Die Lager müssen ordnungsgemäß verwaltet werden, und die Verfallsdaten von Arzneimitteln müssen bei der Verwaltung der Lieferkette ständig berücksichtigt werden. Die Lieferkette für Arzneimittel kann helfen, die Verpackung zu verfolgen, nicht aber die Pillen selbst.
-
KURZDARSTELLUNG
-
Die Prinzipien der Erfindung stellen Techniken zum Erkennen von gefälschten Arzneimitteln bereit. In einem Aspekt beinhaltet ein beispielhaftes Verfahren die Operationen des Erfassens eines Wertes von jeder Spalte und Zeile einer entsprechenden Matrix von Sensoren; des Vergleichens der Werte mit einem anfänglichen oder erwarteten Messwert der entsprechenden Matrix von Sensoren, um eine oder mehrere Spalten und eine oder mehrere Zeilen mit veränderten Werten zu identifizieren; und des Bestimmens eines oder mehrerer Sensoren, die der einen oder mehreren ermittelten Spalten und der einen oder mehreren ermittelten Zeilen entsprechen.
-
In einer Ausführungsform umfasst ein Gerät zum Erkennen einer Manipulation (tampering) eines Produkts in einem Produktverpackungsmaterial: ein Netzwerk von Sensoren, die in das Produktverpackungsmaterial integriert sind; einen Mikrocontroller, wobei der Mikrocontroller so konfiguriert ist, dass er durch Zugriff auf die Sensoren des Sensornetzwerks die Manipulation des Produktverpackungsmaterials erkennt; und ein Kommunikationsgerät zur Weitergabe von Informationen bezüglich eines Zustands des Produktverpackungsmaterials.
-
Wie hier verwendet, umfasst „Erleichterung“ eines Vorgangs das Ausführen des Vorgangs, die Erleichterung des Vorgangs, die Unterstützung bei der Durchführung des Vorgangs oder die Veranlassung der Durchführung des Vorgangs. So können auf einem Prozessor ausgeführte Anweisungen beispielsweise, aber nicht ausschließlich, einen Vorgang erleichtern, der von auf einem anderen Prozessor ausgeführten Anweisungen ausgeführt wird, indem sie geeignete Daten oder Befehle senden, um die Ausführung des Vorgangs zu veranlassen oder zu unterstützen. Zur Vermeidung von Zweifeln: Wo ein Aktor einen Vorgang erleichtert, indem er ihn nicht ausführt, wird der Vorgang dennoch von einer Einheit oder einer Kombination von Einheiten ausgeführt.
-
Eine oder mehrere Ausführungsformen der Erfindung oder Elemente davon können in Form eines Computerprogrammprodukts implementiert werden, das ein computerlesbares Speichermedium mit computer-verwendbarem Programmcode zum Ausführen der angegebenen Verfahrensschritte umfasst. Darüber hinaus können eine oder mehrere Ausführungsformen der Erfindung oder Elemente davon in Form eines Systems (oder einer Vorrichtung) implementiert werden, das einen Speicher und mindestens einen Prozessor/Mikrocontroller umfasst, der mit dem Speicher gekoppelt ist und zum Ausführen beispielhafter Verfahrensschritte dient. Ferner können in einem anderen Aspekt eine oder mehrere Ausführungsformen der Erfindung oder Elemente davon in Form von Mitteln zur Durchführung eines oder mehrerer der hierin beschriebenen Verfahren implementiert werden; die Mittel können (i) Hardwaremodul(e), (ii) Softwaremodul(e), die in einem computerlesbaren Speichermedium (oder mehreren derartigen Medien) gespeichert und auf einem Hardwareprozessor/Mikrocontroller implementiert sind, oder (iii) eine Kombination von (i) und (ii) umfassen; jede der Ausführungsformen (i)-(iii) implementiert die hierin dargelegten spezifischen Techniken.
-
Die Techniken der vorliegenden Erfindung können wesentliche vorteilhafte technische Effekte bereitstellen. Eine oder mehrere Ausführungsformen stellen beispielsweise eines oder mehrere der folgenden Merkmale bereit: intelligente Arzneimittelverpackungen, die Pillenflaschen und Blisterpackungen umfassen; Erkennen von Arzneimittelfälschungen; und Erkennen von Manipulationen an Arzneimittelverpackungen.
-
Diese und andere Merkmale und Vorteile der vorliegenden Erfindung werden aus der folgenden detaillierten Beschreibung von veranschaulichen Ausführungsformen ersichtlich, die in Verbindung mit den beigefügten Zeichnungen zu lesen ist.
-
Figurenliste
-
Bevorzugte Ausführungsformen der vorliegenden Erfindung werden im Folgenden unter Bezugnahme auf die beigefügten Zeichnungen im Detail beschrieben:
- 1 stellt eine Cloud-Computing-Umgebung gemäß einer Ausführungsform der vorliegenden Erfindung dar;
- 2 stellt Abstraktionsmodellebenen gemäß einer Ausführungsform der vorliegenden Erfindung dar;
- 3 ist ein Arbeitsablauf einer beispielhaften pharmazeutischen Lieferkette, gemäß einer beispielhaften Ausführungsform;
- 4 ist eine Querschnittsansicht einer beispielhaften intelligenten Verpackung für die Verteilung von Pillen und Kapseln, gemäß einer beispielhaften Ausführungsform;
- 5-8 veranschaulichen eine beispielhafte intelligente Verpackung zur Verteilung von Pillen und Kapseln unter Verwendung eines kapazitätsbasierten Sensors gemäß einer beispielhaften Ausführungsform;
- 9-10 veranschaulichen ein Beispiel für eine intelligente Verpackung zur Verteilung von Pillen und Kapseln unter Verwendung eines widerstandsbasierten Sensors gemäß einer Ausführungsform;
- 11-13 veranschaulichen ein Beispiel für eine intelligente Verpackung zur Verteilung von Pillen und Kapseln unter Verwendung eines auf einem Schwingkreis basierenden Sensors gemäß einer beispielhaften Ausführungsform;
- 14-15 veranschaulichen beispielhaft eine intelligente Verpackung zur Verteilung von Pillen und Kapseln unter Verwendung eines optisch-basierten Sensors gemäß einer beispielhaften Ausführungsform;
- 16 veranschaulicht einen beispielhaften Prozess zur Herstellung einer intelligenten Verpackung zum Verteilen von Pillen und Kapseln gemäß einer beispielhaften Ausführungsform;
- 17 veranschaulicht eine beispielhafte Sensorschicht für einen beispielhaften intelligenten Behälter zum Verteilen von Pillen und Kapseln gemäß einer beispielhaften Ausführungsform;
- 18 veranschaulicht einen Transistor zur Verwendung als ein aktiver Sensor in einer beispielhaften aktiven Sensoranordnung gemäß einer beispielhaften Ausführungsform;
- 19 ist ein Blockdiagramm eines beispielhaften analogen Multiplexers und Analog-Digital-Wandlers gemäß einer beispielhaften Ausführungsform;
- 20 ist ein Flussdiagramm für ein beispielhaftes Verfahren zum Erkennen von Arzneimittelfälschungen gemäß einer beispielhaften Ausführungsform; und
- 21 stellt ein Computersystem dar, das bei der Implementierung eines oder mehrerer Aspekte und/oder Elemente der Erfindung nützlich sein kann, auch repräsentativ für einen Cloud-Computing-Knoten gemäß einer Ausführungsform der vorliegenden Erfindung.
-
AUSFÜHRLICHE BESCHREIBUNG
-
Es soll verstanden werden, dass, obwohl diese Offenbarung eine detaillierte Beschreibung des Cloud-Computing beinhaltet, die Umsetzung der hier dargelegten Lehren nicht auf eine Cloud-Computing-Umgebung beschränkt ist. Vielmehr können Ausführungsformen der vorliegenden Erfindung in Verbindung mit jedem anderen Typ von Computer-Umgebung implementiert werden, der heute bekannt ist oder später entwickelt wird.
-
Cloud Computing ist ein Modell zur Bereitstellung von Diensten, das einen bequemen, bedarfsgerechten Netzzugang zu einem gemeinsamen Vorrat konfigurierbarer Computerressourcen (z. B. Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Speicher, Anwendungen, virtuelle Maschinen und Dienste) ermöglicht, die mit minimalem Verwaltungsaufwand oder minimaler Interaktion mit einem Anbieter des Dienstes schnell bereitgestellt und freigegeben werden können. Dieses Cloud-Modell kann mindestens fünf Charakteristiken, mindestens drei Service-Modelle und mindestens vier Bereitstellungsmodelle beinhalten.
-
Die Charakteristiken lauten wie folgt:
-
Bedarfsgesteuerte Selbstbedienung: Ein Cloud-Verbaucher kann einseitig Ressourcen für Berechnungen bereitstellen, wie z. B. Serverzeit und Netzwerkspeicher, und zwar automatisch, ohne dass eine menschliche Interaktion mit dem Anbieter des Dienstes erforderlich ist.
-
Breiter Netzwerkzugriff: Die Ressourcen sind über ein Netzwerk verfügbar und werden über Standardmechanismen abgerufen, die die Verwendung durch heterogene Thin- oder Thick-Client-Plattformen (z. B. Mobiltelefone, Laptops und PDAs) fördern.
-
Ressourcenbündelung: Die Computer-Ressourcen des Anbieters werden in einem Multi-Tenant-Modell gebündelt, um mehrere Verbraucher zu bedienen, wobei verschiedene physische und virtuelle Ressourcen je nach Bedarf dynamisch zugewiesen und neu zugewiesen werden. Es besteht eine gewisse Standortunabhängigkeit, da der Verbraucher in der Regel keine Kontrolle oder Kenntnis über den genauen Standort der bereitgestellten Ressourcen hat, jedoch den Standort auf einer höheren Abstraktionsebene angeben kann (z. B. Land, Staat oder Rechenzentrum).
-
Flexible Anpassungsfähigkeit: Ressourcen können schnell und elastisch bereitgestellt werden, in manchen Fällen auch automatisch, um schnell zu skalieren und schnell wieder freigegeben werden, um schnell zu skalieren. Für den Verbraucher erscheinen die für die Bereitstellung verfügbaren Ressourcen oft unbegrenzt und können in beliebiger Menge und zu jeder Zeit erworben werden.
-
Dienstmessung: Cloud-Systeme kontrollieren und optimieren automatisch die Ressourcennutzung, indem sie eine dem Typ des Dienstes entsprechende Steuereinheit auf einer bestimmten Abstraktionsebene verwenden (z. B. Speicher, Verarbeitung, Bandbreite und aktive Benutzerkonten). Die Ressourcennutzung kann überwacht, kontrolliert und gemeldet werden, wodurch Transparenz sowohl für den Anbieter als auch für den Nutzer des genutzten Dienstes bereitgestellt wird.
-
Die Service-Modelle lauten wie folgt:
-
Software as a Service (SaaS): Die dem Verbraucher bereitgestellte Ressource besteht darin, die Anwendungen des Anbieters zu verwenden, die auf einer Cloud-Infrastruktur laufen. Der Zugriff auf die Anwendungen erfolgt von verschiedenen Mandant-Geräten aus über eine Thin-Client-Schnittstelle wie z. B. einen Webbrowser (z. B. webbasierte E-Mail). Der Verbraucher verwaltet oder kontrolliert nicht die zugrunde liegende Cloud-Infrastruktur, einschließlich Netzwerk, Server, Betriebssysteme, Steuereinheiten oder sogar einzelne Anwendungsressourcen, mit der möglichen Ausnahme begrenzter benutzerspezifischer Anwendungskonfigurationseinstellungen.
-
Platform as a Service (PaaS): Die dem Verbraucher bereitgestellte Ressource besteht darin, vom Verbraucher erstellte oder erfasste Anwendungen, die mit vom Anbieter unterstützten Programmiersprachen und Tools erstellt wurden, in der Cloud-Infrastruktur einzusetzen. Der Verbraucher verwaltet oder kontrolliert nicht die zugrunde liegende Cloud-Infrastruktur, die Netzwerke, Server, Betriebssysteme oder Steuereinheiten umfasst, hat aber die Kontrolle über die bereitgestellten Anwendungen und möglicherweise über die Konfigurationen der Hosting-Umgebung der Anwendungen.
-
nfrastructure as a Service (laaS): Die dem Verbraucher bereitgestellte Ressource besteht in der Bereitstellung von Verarbeitungs-, Speicher-, Netzwerk- und anderen grundlegenden Computer-Ressourcen, wobei der Verbraucher in der Lage ist, beliebige Software einzusetzen und auszuführen, die Betriebssysteme und Anwendungen umfassen kann. Der Verbraucher verwaltet oder kontrolliert nicht die zugrunde liegende Cloud-Infrastruktur, sondern hat die Kontrolle über Betriebssysteme, Speicher, bereitgestellte Anwendungen und möglicherweise eine begrenzte Kontrolle über ausgewählte Netzwerkkomponenten (z. B. Host-Firewalls).
-
Die Bereitstellungsmodelle lauten wie folgt:
-
Private Cloud: Die Cloud-Infrastruktur wird für lediglich eine Organisation betrieben. Sie kann von der Organisation selbst oder von einem Dritten verwaltet werden und sich an Ort und Stelle oder an einem anderen Ort befinden.
-
Gemeinschafts-Cloud: Die Cloud-Infrastruktur wird von mehreren Organisationen gemeinsam genutzt und unterstützt eine spezifische Gemeinschaft mit gemeinsamen Anliegen (z. B. Aufgabe, Sicherheitsanforderungen, Richtlinie und Einhaltung von Gesetzen und Richtlinien). Sie kann von den Organisationen selbst oder von einem Dritten verwaltet werden und sich an Ort und Stelle oder an einem anderen Ort befinden.
-
Öffentliche Cloud: Die Cloud-Infrastruktur wird der allgemeinen Öffentlichkeit oder einer großen Branchengruppe bereitgestellt und ist Eigentum einer Organisation, die Cloud-Dienste verkauft.
-
Hybrid-Cloud: Die Cloud-Infrastruktur ist eine Zusammensetzung aus zwei oder mehreren (privaten, Gemeinschafts- oder öffentlichen) Clouds, die eigenständige Einheiten bleiben, aber durch eine standardisierte oder herstellerspezifische Technologie miteinander verbunden sind, die eine Portierbarkeit von Daten und Anwendungen ermöglicht (z. B. das Cloud-Bursting für den Lastausgleich zwischen Clouds).
-
Eine Cloud-Datenverarbeitungsumgebung ist dienstorientiert, wobei der Schwerpunkt auf Zustandslosigkeit, geringer Kopplung, Modularität und semantischer Kompatibilität liegt. Im Mittelpunkt einer Cloud-Datenverarbeitung steht eine Infrastruktur, die ein Netzwerk von miteinander verbundenen Knoten umfasst.
-
In 1 ist eine veranschaulichende Cloud-Computing-Umgebung 50 dargestellt. Wie dargestellt, beinhaltet die Cloud-Computing-Umgebung 50 einen oder mehrere Cloud-Computing-Knoten 10, mit denen lokale Rechengeräte, die von Verbrauchern in der Cloud verwendet werden, wie z. B. PDAs (Personal Digital Assistant) oder Mobiltelefone 54A, Desktop-Computer 54B, Laptops 54C und/oder Computersysteme für Kraftfahrzeuge 54N, kommunizieren können. Die Knoten 10 können miteinander kommunizieren. Sie können physisch oder virtuell in einem oder mehreren Netzwerken gruppiert sein (nicht dargestellt), wie z. B. in privaten, Community-, öffentlichen oder hybriden Clouds, wie oben beschrieben, oder einer Kombination davon. Auf diese Weise kann die Cloud-Computing-Umgebung 50 Infrastruktur, Plattformen und/oder Software als Services anbieten, für die ein Verbraucher in der Cloud keine Ressourcen auf einem lokalen Rechengerät beibehalten muss. Es wird verstanden, dass die in 1 dargestellten Typen von Rechengeräten 54A-N nur zur Veranschaulichung dienen und dass die Rechenknoten 10 und die Cloud-Computing-Umgebung 50 mit jedem Typ von Computer-Gerät über jede Art von Netzwerk und/oder netzwerkadressierbare Verbindung (z. B. unter Verwendung eines Webbrowsers) kommunizieren können.
-
Unter Bezugnahme auf 2 wird nun eine Reihe von funktionalen Abstraktionsschichten gezeigt, die von der Cloud-Computing-Umgebung 50 (1) bereitgestellt werden. Es sollte im Voraus verstanden werden, dass die in 2 dargestellten Komponenten, Schichten und Funktionen nur zur Veranschaulichung dienen und die Ausführungsformen der Erfindung nicht darauf beschränkt sind. Wie gezeigt, werden die folgenden Schichten und entsprechenden Funktionen bereitgestellt:
-
Die Hardware- und Software-Schicht 60 umfasst Hardware- und SoftwareKomponenten. Beispiele für Hardware-Komponenten beinhalten: Großrechner 61; Server auf der Grundlage der RISC-Architektur (Reduced Instruction Set Computer) 62; Server 63; Blade-Server 64; Speichergeräte 65 sowie Netzwerke und Netzwerkkomponenten 66. In einigen Ausführungsformen beinhalten die Softwarekomponenten Netzwerk-Anwendungsserversoftware 67 und Datenbanksoftware 68.
-
Die sschicht 70 beinhaltet eine Abstraktionsschicht, auf der die folgenden Beispiele für virtuelle Einheiten bereitgestellt werden können: virtuelle Server 71, virtuelle Speicher 72, virtuelle Netzwerke 73, einschließlich virtueller privater Netzwerke, virtuelle Anwendungen und Betriebssysteme 74 und virtuelle Mandanten 75.
-
In einem Beispiel kann die Verwaltungsschicht 80 die im Folgenden beschriebenen Funktionen bereitstellen. Die Ressourcenbereitstellung 81 stellt die dynamische Beschaffung von Computer-Ressourcen und anderen Ressourcen bereit, die zum Ausführen von Aufgaben innerhalb der Cloud-Computing-Umgebung genutzt werden. Metering und Pricing 82 stellen die Kostenverfolgung bei der Nutzung von Ressourcen in der Cloud-Computing-Umgebung sowie die Abrechnung oder Rechnungsstellung für den Verbrauch dieser Ressourcen bereit. In einem Beispiel können diese Ressourcen Lizenzen für Anwendungssoftware beinhalten. Sicherheit stellt die Identitätsprüfung für Verbraucher und Aufgaben in der Cloud sowie den Schutz von Daten und anderen Ressourcen bereit. Das Benutzerportal 83 stellt den Zugang zur Cloud-Computing-Umgebung für Verbraucher und Systemadministratoren bereit. Das Service-Level-Management 84 stellt die Zuweisung und Verwaltung von Cloud-Computing-Ressourcen bereit, so dass die erforderlichen Service-Levels eingehalten werden. Die Planung und Erfüllung von Service Level Agreements (SLA) 85 stellt die Anordnung und Beschaffung von Cloud-Computing-Ressourcen bereit, für die ein zukünftiger Bedarf gemäß einem SLA erwartet wird.
-
Die Schicht 90 „Arbeitslasten“ stellt Beispiele für Funktionen bereit, für die die Cloud-Computing-Umgebung genutzt werden kann. Beispiele für Arbeitslasten und Funktionen, die von dieser Schicht aus bereitgestellt werden können, umfassen: Mapping und Navigation 91; Softwareentwicklung und Lebenszyklusmanagement 92; Bereitstellung von Unterricht in virtuellen Klassenzimmern 93; Datenanalyseverarbeitung 94; Transaktionsverarbeitung 95; und Arzneimittel-Überwachungssystem 96.
-
Im Allgemeinen sind Verfahren und Systeme zum Erkennen von gefälschten Arzneimitteln offenbart. 3 ist ein Arbeitsablauf einer beispielhaften pharmazeutischen Ausführungskette, gemäß einer beispielhaften Ausführungsform. In einer beispielhaften Ausführungsform ist eine intelligente Verpackung während einer Herstellungsphase 304 mit aktiven Netzwerksensoren, passiven Netzwerksensoren, optischen Netzwerksensoren oder einer beliebigen Kombination davon konfiguriert, die mit einer Steuereinheit für Edge Computing, einer Dünnschichtbatterie und einem Gerät zur Kommunikation integriert sind, die verwendet werden können, um die Echtheit eines in der intelligenten Verpackung umfassenden Arzneimittels zu überprüfen. In einer beispielhaften Ausführungsform umfasst die intelligente Verpackung ein flexibles Substrat mit einer Dicke von beispielsweise 1 bis 2 Millimetern (mm) und enthält gedruckte Schaltkreise, die an eine Blisterpackung, eine Pillenflasche und dergleichen in verschiedenen Gestalten und Größen aufgeformt werden können. Die intelligente Verpackung kann durch den Versand 308 und die Verteilung 312 verfolgt werden, was die Lieferung an einen Verbraucher oder eine Apotheke bei 316 beinhaltet. Block 316 beinhaltet eine Einzelhandelsphase, wobei Apotheken und andere Einzelhandelsgeschäfte verschiedene Anwendungen verwenden, um die für die intelligente Verpackung verfügbaren Sicherheitsmaßnahmen zu validieren. Es sollte klar sein, dass die Erleichterung der Verfolgung durch eine Vielzahl von Verfahren erfolgen kann, einschließlich Blockchain-Verfahren und -Algorithmen für die Lieferkettenlogistik, Radiofrequenz-Identifizierungen (RFIDs), Hologramme und andere Signaturen zusammen mit einer einmaligen Schlüsselbefähigung für die Paketauthentifizierung, die nicht wiederverwendet/wiederhergestellt werden kann.
-
4 ist eine Querschnittsansicht einer beispielhaften intelligenten Verpackung 600 zur Verteilung von Pillen und Kapseln gemäß einer beispielhaften Ausführungsform. In einer beispielhaften Ausführungsform sind eine Sensorschicht 608-1 und eine Mikrobatterieschicht 612-1 zwischen einer Aluminiumfolie oder einer medizinisch genehmigten Metalldeckschicht 604 und einer Klebstoffschicht 616-1 eingefügt. Die Mikrobatterieschicht 612-1 weist eine oder mehrere Mikrobatterien auf, die vorgeladen sein können, beispielhaft durch einen elektronischen Scanner aufgeladen werden können, der Informationen von der Verpackung 600 erhält, und dergleichen. Die Mikrobatterien können durch Nahfeldkommunikation (NFC) oder auf Photovoltaik basierende Verfahren aufgeladen werden. Eine Sensorschicht 608-2 und eine Mikrobatterieschicht 612-2 sind zwischen einer Klebeschicht 616-2 und einer äußeren Deckschicht 624 eingefügt. Jede Sensorschicht (608-1 und 608-2, hier allgemein als 608 bezeichnet) umfasst eine Matrix von Trigger-Sensoren (ein Netzwerk von Trigger-Sensoren), die dazu dienen, zu ermitteln, ob die Verpackung geöffnet und/oder manipuliert wurde. Ein analoger Multiplexer und Analog-Digital-Wandler (ADC), der in die benachbarte Mikrobatterieschicht (612-1 oder 612-2, hier allgemein als 612 bezeichnet) integriert ist, tastet das elektrische Netzwerk der Sensormatrix der Sensorschicht (608) ab (Matrix und Anordnung werden hier austauschbar verwendet). In einer beispielhaften Ausführungsform, im Falle einer Sensormatrix, die Sensoren enthält, die einen digitalen Ausgang erzeugen, tastet ein digitaler Multiplexer, der in die benachbarte Mikrobatterieschicht 612-1 integriert ist, das elektrische Netzwerk einer Sensormatrix der Sensorschicht 608-1 ab. Ein Mikrocontroller 628 erfasst/liest die Daten aus dem ADC und speichert die erhaltenen Daten. In einer beispielhaften Ausführungsform ermittelt der Mikrocontroller 628 auch, welche spezifische Pillen-/Kapseltasche (pill/capsule slot) geöffnet und/oder manipuliert wurde. Die vom Mikrocontroller 628 ermittelten Ergebnisse können verschlüsselt und drahtlos an ein externes Gerät weitergeleitet werden, beispielsweise über einen RFID-Tag 632.
-
5-8 veranschaulichen eine beispielhafte intelligente Verpackung 600 zur Verteilung von Pillen und Kapseln unter Verwendung eines kapazitätsbasierten Sensors, gemäß einer beispielhaften Ausführungsform. In einer beispielhaften Ausführungsform ist jeder Sensor der Sensorschicht 608 als ein Kondensator 700 implementiert, der parallele Metallplatten 704-1, 704-2 umfasst, wie in 5 veranschaulicht. Der Abstand zwischen den parallelen Metallplatten 704-1, 704-2 wird beispielhaft ausgewählt, um den Typ (die Größe) der Pillen, die Abmessungen der Verpackung und dergleichen zu berücksichtigen. Der Abstand kann von einigen Millimetern für kleinere Pillen bis zu Zentimetern für größere Pillen variieren. Die Sensorschicht 608 kann unter der Aluminium- bzw. anderen Metallfolienschicht 604, unter der äußeren Kunststoffabdeckschicht 624 oder unter beiden Schichten angebracht sein. Eine Anordnung von Sensoren 708 (z. B. Kondensatoren 700), wie in den 7 und 8 veranschaulicht, wird wie ein Netzwerk von Kondensatoren 712 behandelt, wie in 6 veranschaulicht. Die in 8 veranschaulichte Anordnung von Sensoren 708 ist mit einem analogen Multiplexer und einem Analog-Digital-Wandler (ADC) 636 verbunden, der in die benachbarte Mikrobatterieschicht 612 integriert ist. Der analoge Multiplexer wird verwendet, um eine der Zeilen oder Spalten des Netzwerks von Kondensatoren 712 auszuwählen, und der ADC wandelt das Signal in einen digitalen Wert um, der vom Mikrocontroller 628 gelesen werden kann, wie in 8 veranschaulicht. In einer beispielhaften Ausführungsform wird jede Ablesung durch den Mikrocontroller 628 mit einem Zeitstempel versehen, der den Zeitpunkt der Ablesung angibt. In einer beispielhaften Ausführungsform werden alle vom Mikrocontroller 628 ausgelesenen Änderungen mit einem Zeitstempel versehen, der den Zeitpunkt des Auslesens angibt. In einer beispielhaften Ausführungsform werden die Kondensatoren 712 zum Zeitpunkt des Einbaus der Kondensatoren 712 in die intelligente Verpackung 600 aufgeladen. In einer beispielhaften Ausführungsform werden die Kondensatoren 712 entweder während oder nach der Herstellung über eine Step-up-Power-Management-Schaltung und die Mikrobatterieschicht 612 oder über Nahfeldkommunikation geladen.
-
Wenn eine Pille aus der Verpackung entnommen oder die Verpackung anderweitig manipuliert wird, ändert sich die Kapazität dieser spezifischen Blisterpackungstasche (blister pack slot), wodurch sich wiederum die Spannung im gesamten Netzwerk ändert. Die Spannungsänderung in den Zeilen und Spalten des Sensornetzwerks löst die Änderung des digitalen Werts für den Mikrocontroller 628 aus. Die Spannungsänderung wird vom Mikrocontroller 628 abgebildet, um den spezifische Blisterpackungstasche oder die Position der Pille zu ermitteln. Die Informationen werden über den RFID-Tag (oder ein anderes Kommunikationsgerät) an ein entferntes Smart-Gerät übertragen.
-
9-10 veranschaulichen eine beispielhafte intelligente Verpackung 600 zur Verteilung von Pillen und Kapseln unter Verwendung eines widerstandsbasierten Sensors, gemäß einer beispielhaften Ausführungsform. In einer beispielhaften Ausführungsform ist jeder Sensor der Sensorschichten 608-1, 608-2 als ein Widerstandssensor 800 implementiert, der Metalldrahtleitungen 804-1 bzw. 804-2 umfasst, wie in 9 veranschaulicht. Die Sensorschicht 608 kann unter der Aluminiumfolienschicht 604, unter der äußeren Kunststoffabdeckschicht 624 oder unter beiden Schichten angebracht sein. In einer beispielhaften Ausführungsform umfasst die Anordnung von Sensoren 708 die Widerstandssensoren 800 und wird als ein Netzwerk von Widerstandsdrähten 812 behandelt, wie in 10 veranschaulicht, wobei die Kathode der Mikrobatterie mit den Anschlüssen von zwei Kanten des Netzwerks von Widerstandsdrähten 812 verbunden ist und die Anode der Mikrobatterie mit Masse verbunden ist. Jeder Anschluss der beiden verbleibenden Ränder des Netzwerks aus Widerstandsdrähten 812 ist, wie in 10 veranschaulicht, mit einem Anschluss des analogen Multiplexers und Analog-Digital-Wandlers (ADC) 636 verbunden, der in die benachbarte Mikrobatterieschicht 612 integriert ist. Der analog Multiplexer wird verwendet, um eine der Zeilen oder Spalten des Netzwerks von Widerstandsdrähten 812 auszuwählen, und der ADC wandelt das Signal in einen digitalen Wert um, der vom Mikrocontroller 628 gelesen werden kann, wie in 8 veranschaulicht. In einer beispielhaften Ausführungsform wird jede Ablesung durch den Mikrocontroller 628 mit einem Zeitstempel versehen, der den Zeitpunkt der Ablesung angibt. In einer beispielhaften Ausführungsform werden alle vom Mikrocontroller 628 gelesenen Änderungen mit einem Zeitstempel versehen, der den Zeitpunkt des Lesens angibt.
-
In einer beispielhaften Ausführungsform fungiert der Widerstandsdraht 812 als Erfassungs-Dehnungsmessstreifen, der die Menge an auf den Widerstandsdraht 812 ausgeübter Kraft misst, falls vorhanden. Die Änderungen des Widerstandswertes des Widerstandsdrahtes 812 sind relativ zu der Menge ausgeübter Kraft. Auf Grundlage der Dicke des Widerstandsdrahtes 812, die gemäß der Größe der Blisterpackung ausgewählt und konfiguriert werden kann, wird jede Manipulation an der Packung wahrscheinlich zu einer effektiven Änderung des Widerstandswertes des Widerstandsdrahtes 812 führen. Dieser Kraftwert kann verwendet werden, um zu erkennen, ob eine Manipulation an der Verpackung 600 vorgenommen wurde. In ähnlicher Weise gibt ein Widerstandswert von Null einen beschädigten Widerstandsdraht 812 und Anzeichen für Manipulation an. Die Widerstandsdicke kann auf Grundlage der Abmessungen der Verpackung und der Kosten eingestellt werden. Beispielhaft kann eine Dicke von 1 mm verwendet werden. Für Implementierungen mit geringer Stromstärke (z. B. Implementierungen, bei denen der Gesamtstrom durch das Netzwerk der Widerstandsdrähte 812 weniger als ein Ampere beträgt) kann ein dickerer Draht und ein entsprechend geringerer Widerstand verwendet werden. In einer beispielhaften Ausführungsform werden zwei bis drei Widerstandsschichten (mit einer Gesamtdicke von 2-3 mm) verwendet, um Manipulationen zu erkennen.
-
Wenn eine Pille aus der Verpackung 600 entfernt oder die Verpackung anderweitig manipuliert wird, ändert sich der Widerstand dieser spezifischen Blisterpackungstasche, was wiederum die Spannung im gesamten Netzwerk der Sensoren verändert. Die Änderung der Spannung über die Zeilen und Spalten im Sensornetzwerk löst die Änderung des digitalen Werts für den Mikrocontroller 628 aus. Die Spannungsänderung wird dann abgebildet, um die spezifische Position der Pille zu ermitteln. Die Informationen werden dann über den RFID-Tag (oder ein anderes Kommunikationsgerät) an ein entferntes Smart-Gerät übertragen.
-
11-13 veranschaulichen eine beispielhafte intelligente Verpackung 600 zur Verteilung von Pillen und Kapseln unter Verwendung eines Sensors, der auf einem Schwingkreis basiert, gemäß einer beispielhaften Ausführungsform. In einer beispielhaften Ausführungsform wird die Phase und/oder Frequenz des Sensors der spezifischen Blisterpackungstasche verwendet, um zu erkennen, ob die Verpackung 600 manipuliert worden ist. In einer beispielhaften Ausführungsform ist jeder Sensor der Sensorschicht 608 als ein Schwingkreis implementiert, der einen passiven Schwingkreis 904-1, der auf ein Signal von einem Oszillator, wie z. B. einem Kristalloszillator (nicht gezeigt), reagiert, oder einen aktiven Schwingkreis 904-2 (hier allgemein als Schwingkreise 904 bezeichnet) umfasst, wie in 11 veranschaulicht. In einer beispielhaften Ausführungsform umfasst die Anordnung von Sensoren 708 die Schwingkreise 904 und wird als ein Netzwerk von Schwingkreisen 912 behandelt, wie in 13 veranschaulicht. Jeder Schwingkreis 904 ist auf eine bestimmte (möglicherweise einzigartige) Frequenz ausgelegt, die als Signatur für die entsprechende Tasche (slot) fungiert. In einer beispielhaften Ausführungsform wird der Mikrocontroller 628 mit dem Wert der erwarteten Frequenz für jeden Sensor programmiert. Das Netzwerk der Schwingkreise 912, wie in 13 veranschaulicht, ist mit dem analogen Multiplexer und dem Analog-Digital-Wandler (ADC) 636 verbunden, die in die benachbarte Mikrobatterieschicht 612 integriert sind. Insbesondere ist jede Zeile oder Spalte des Netzwerks von Schwingkreisen 912, wie in 13 veranschaulicht, mit einem der Eingänge des analogen Multiplexers und Analog-Digital-Wandlers (ADC) 636 verbunden, der in die benachbarte Mikrobatterieschicht 612 integriert ist. Der analog Multiplexer wird verwendet, um eine der Zeilen oder Spalten des Netzwerks von Schwingkreisen 912 auszuwählen, und der ADC wandelt das Signal in einen digitalen Wert um, der vom Mikrocontroller 628 gelesen werden kann, wie in 8 veranschaulicht. Das Netzwerk der Schwingkreise 912 kann ständig aktiv sein oder nur periodisch durch den Mikrocontroller 628 aktiviert werden. In einer beispielhaften Ausführungsform wird von dem entsprechenden Schwingkreis 904 ein Signal mit der Frequenz und/oder Phase erzeugt, die der spezifischen Blisterpackungstasche entspricht. Das Signal wird vom Mikrocontroller 628 über den Analog-Digital-Wandler (ADC) 636 gelesen und dann abgebildet, um die spezifische Blisterpackungstasche oder die Position der Pille zu ermitteln.
-
12 veranschaulicht eine Basislinienwellenform (baseline waveform) 1204 und verschiedene Frequenz- und/oder Phasenänderungen der Basislinienwellenform 1204, die in den Wellenformen 1208 dargestellt sind. Jede Änderung der erwarteten Frequenz und/oder Phase eines bestimmten Schwingkreises 904 (einschließlich einer Frequenz von Null) ist ein Hinweis auf eine mögliche Manipulation der Verpackung 600. Die erhaltenen Informationen werden dann (unter Verwendung eines Kommunikationsgeräts) an ein entferntes Smart-Gerät übertragen. In einer beispielhaften Ausführungsform wird jede Ablesung durch den Mikrocontroller 628 mit einem Zeitstempel versehen, der den Zeitpunkt der Ablesung angibt. In einer beispielhaften Ausführungsform werden alle vom Mikrocontroller 628 gelesenen Änderungen mit einem Zeitstempel versehen, der den Zeitpunkt des Lesens angibt.
-
14-15 veranschaulichen eine beispielhafte intelligente Verpackung 600 zur Verteilung von Pillen und Kapseln unter Verwendung eines optischen Sensors gemäß einer beispielhaften Ausführungsform. In einer beispielhaften Ausführungsform ist jeder Sensor der Sensorschicht 608 als optischer Sensor 1000 implementiert, wie in 14 veranschaulicht. Beispielhaft kann ein UV- und IR-Sensor in jeden Blisterpackungstasche integriert und vollständig versiegelt werden. Der optische Sensor 1000 wird beispielsweise über ein Gerät für die Nahfeldkommunikation (NFC) mit Strom versorgt und kann beispielsweise einen bestimmten (2D- oder 3D-)Barcode, ein Hologramm, eine bestimmte Signatur des Arzneimittels und Ähnliches lesen. In einer beispielhaften Ausführungsform kann der optische Sensor 1000 ein Muster aus dem reflektierten Licht erkennen, kann ein eingebettetes Zeichen detektieren, das für die Pille einzigartig ist, und ähnliches. In einer beispielhaften Ausführungsform umfasst die Anordnung von Sensoren 708 die optischen Sensoren 1000 und wird als ein Netzwerk von optischen Sensoren 1012 behandelt, wie in 15 veranschaulicht. Das Netzwerk optischer Sensoren 1012 ist, wie in 15 veranschaulicht, mit dem analogen Multiplexer und dem Analog-Digital-Wandler (ADC) 636 verbunden, der in die benachbarte Mikrobatterieschicht 612 integriert ist. In einer beispielhaften Ausführungsform hat der Multiplexer eine Eingabe für jeden optischen Sensor 1000. Jeder optische Sensor 1000 wird einzeln ausgewählt, und das Signal des optischen Sensors 1000 wird von dem analogen Multiplexer und dem Analog-Digital-Wandler (ADC) 636 in einen digitalen Wert umgewandelt, der von dem Mikrocontroller 628 gelesen werden kann. Der Mikrocontroller 628 ist mit der erwarteten Signatur des Arzneimittels programmiert und ermittelt auf Grundlage des beobachteten Lichtspektrums, eines erkannten Musters, eines detektierten eingebetteten Zeichens und Ähnlichem, ob das Arzneimittel echt oder gefälscht ist. Die vom optischen Sensor 1000 erhaltenen Informationen werden analysiert, und das Ergebnis wird über den RFID-Tag (oder ein anderes Kommunikationsgerät) an ein entferntes Smart-Gerät übertragen. In einer beispielhaften Ausführungsform wird jede Ablesung durch den Mikrocontroller 628 mit einem Zeitstempel versehen, der den Zeitpunkt der Ablesung angibt. In einer beispielhaften Ausführungsform wird die Anordnung von Sensoren 1000 in Kombination mit der Anordnung 708 von Kondensatoren 700, Widerstandssensoren 800 oder Schwingkreisen 900 verwendet, wobei die Anordnung von Sensoren 1000 zwischen den Pillen und der Anordnung 708 von Kondensatoren 700, Widerstandssensoren 800 oder Schwingkreisen 904 angeordnet ist. In der beispielhaften Ausführungsform von 14 befindet sich der optische Sensor 1000 zwischen den Metallplatten 704-1, 704-2 eines Kondensators 700.
-
16 veranschaulicht eine beispielhafte Aufklebemaschine (stick-on machine) 1104 und einen Prozess zur Herstellung einer intelligenten Verpackung 600 gemäß einer beispielhaften Ausführungsform. In einer beispielhaften Ausführungsform führt die Aufklebemaschine 1104 vier Stufen aus (Stufen 1-4). Die Aufklebemaschine 1104, die elektrische und mechanische Strukturen umfasst, bestückt die Pillen und Kapseln und bringt elektronische Einheiten auf der intelligenten Verpackung 600 an. Die Aufklebemaschine 1104 kann als Tischgerät ausgeführt werden.
-
In Stufe 1 wird eine PILLEN-AUFNAHMEKAMMER/ZUFÜHRUNG 1108 mit Pillen oder Kapseln gefüllt. Die Pillen-Aufnahmekammer/Zuführung 1108 ist eine luftdicht verschlossene Kammer, in welcher die Pillen und Kapseln für die weitere Verarbeitung und Verpackung gelagert werden. Ein Paar von Pillen-Identifizierungssensoren 1112 und eine verknüpfte Steuereinheit 1116 werden zur Identifizierung oder Bestätigung der Identität von Typ, Marke und Größe der Pillen verwendet. Die Pillen gelangen über einen zylindrische Durchgang 1144 zu einem mechanischen Pillenventil 1120. Das mechanische Pillenventil 1120 öffnet und schließt sich (basierend auf einer Ausgabe der Steuereinheit 1116), um die Pillen über Pillen-Kanäle 1156 über ein erstes Förderbandsystem 1124 (angetrieben durch ein Motorsystem 1152) zu verteilen. Es stehen verschiedene Pillengrößenkanäle zur Verfügung, um unterschiedliche Pillengrößen aufnehmen zu können. Eine Sicherheitstaste 1128 ist vorhanden, um die Maschine im Falle einer Fehlfunktion abzuschalten.
-
In Stufe 2 leitet das erste Förderbandsystem 1124 die Pillen über einen zylindrischen Durchgang 1132 zu einem zweiten Förderbandsystem 1136 (ebenfalls angetrieben durch das Motorsystem 1152) der nächsten Stufe weiter. In Stufe 3 verwendet das zweite Förderbandsystem 1136 einen externen Durchführungsmechanismus (nicht dargestellt), um die Pillen in die Blistertaschen einzuführen, und einen elektronischen Arm (nicht dargestellt), um die elektronischen Einheiten (wie die Mikrobatterieschicht 612-1, die Sensorschicht 608-2, die Mikrobatterieschicht 612-2, den Mikrocontroller 628 und dergleichen), die Aluminium-/Sonstige-Metallfolienschicht 604 und die äußere Kunststoffabdeckschicht 624 zu installieren. In Stufe 4 gelangt die fertige intelligente Verpackung 600 über die Rutsche 1140 in die Kammer 1148 zur Sammlung der verpackten Pillen.
-
17 veranschaulicht eine beispielhafte Sensorschicht 1200 für einen beispielhaften intelligenten Behälter zur Verteilung von Pillen und Kapseln, gemäß einer beispielhaften Ausführungsform. Bei dem Behälter kann es sich um eine Pillenflasche, eine Pillendose oder ähnliches handeln. In einer beispielhaften Ausführungsform kleidet eine Sensorschicht 1200 die zylindrische Wand der Pillenflasche aus. In einer beispielhaften Ausführungsform kleidet eine modulare Sensorschicht 1200 die zylindrische Wand der Pillenflasche, den runden Boden der Pillenflasche und den runden Deckel der Pillenflasche aus. Jeder Teil der modularen Sensorschicht 1200 kann einen eigenen Mikrocontroller enthalten, oder die Teile können elektrisch miteinander gekoppelt sein, um ein oder mehrere Netzwerke auszubilden, die von dem Mikrocontroller 628 gelesen werden können. Ähnliche modulare Sensorschichten 1200 können so konfiguriert werden, dass sie die Wände von quadratischen, rechteckigen, ovalen Behältern und dergleichen auskleiden. Die Sensoren sind in einer käfigartigen Matrixstruktur angeordnet, die den Inhalt der Verpackung umgibt und die Pillenpackung abschirmt.
-
18 veranschaulicht einen Transistor 1800 zur Verwendung als aktiver Sensor in einer Anordnung von Sensoren gemäß einer beispielhaften Ausführungsform. Der Transistor 1800 kann entweder mit der P-Typ-Metalloxid-Halbleiter-Technologie (PMOS) (unter Verwendung von Source und Drain vom p-Typ und einem Substrat vom n-Typ, wie in 18 schematisch veranschaulicht) oder mit der N-Typ-Metalloxid-Halbleiter-Technologie (NMOS) (unter Verwendung von Source und Drain vom n-Typ und einem Substrat vom p-Typ; nicht dargestellt) implementiert werden. In einer beispielhaften Ausführungsform arbeitet der aktive Sensor im Cut-Off-, Linear- und Sättigungsbereich des Transistors, wenn dieser nicht manipuliert worden ist. Wenn ein Gehäuse so manipuliert wird, dass der Source-Drain-Kanal zerstört wird, ist der Transistor 1800 nicht in der Lage, in die Sättigung zu gehen. Die Zerstörung des Transistors (des aktiven Sensors) gibt also eine Manipulation an.
-
19 ist eine grafische Darstellung eines beispielhaften analogen Multiplexers und Analog-Digital-Wandlers 636 gemäß einer beispielhaften Ausführungsform. In einer beispielhaften Ausführungsform ist der analoge Multiplexer ein 8:1-Multiplexer unter Verwendung von drei Multiplexer-Auswahl-Linien 1408-1, ..., 1408-3 (hier zusammenfassend als Multiplexer-Auswahl-Linien 1408 bezeichnet). Jede Spalte und/oder Zeile eines Sensornetzwerks, wie z. B. das Netzwerk von Widerstandsdrähten 812, ist mit einem der Multiplexer-Eingänge 1404-1, ..., 1404-8 (hier zusammenfassend als Multiplexer-Eingänge 1404 bezeichnet) verbunden. Im Falle der optischen Sensoren 1000 hat jeder Sensor 1000 eine eigene Multiplexer-Eingabe 1404. Der Binärwert auf den Multiplexer-Auswahllinien 1408 bestimmt den Multiplexer-Eingang 1404, der vom analogen Multiplexer ausgewählt und vom Analog-Digital-Wandler zur Ausgabe am Multiplexer-Ausgang 1412 umgewandelt wird. In beispielhaften Ausführungsformen, wobei die Sensoren einen digitalen Ausgang erzeugen, wird ein digitaler Multiplexer verwendet, um einen oder mehrere Sensoren auszuwählen (ohne dass der Analog-Digital-Wandler erforderlich ist). In einer beispielhaften Ausführungsform können sich intelligente Sensoren eine Multiplexer-Eingabe 1404 gemeinsam benutzen. Beispielhaft können intelligente Sensoren, die eine Kommunikationsschnittstelle für einen gemeinsamen Link enthalten, einen Multiplexer-Eingang 1404 gemeinsam nutzen.
-
20 ist ein Flussdiagramm 1500 für ein beispielhaftes Verfahren zum Erkennen von Arzneimittelfälschungen, gemäß einer beispielhaften Ausführungsform. In einer beispielhaften Ausführungsform erfasst der Mikrocontroller 628 jede Spalte und Zeile einer entsprechenden Anordnung von Sensoren 708, 1012 (Operation 1504). Der Mikrocontroller 628 vergleicht die gelesenen Werte mit einem anfänglichen oder erwarteten (vorprogrammierten) Messwert der entsprechenden Matrix 708, 1012 von Sensoren (Operation 1508). In einer beispielhaften Ausführungsform vergleicht der optische Sensor 1000 ein Bild der Pille mit einem früheren Bild oder einem vorprogrammierten Bild der Pille, eine Farbe der Pille mit einer vorprogrammierten Farbe der Pille und dergleichen. Der Mikrocontroller 628 ermittelt dann, welche(r) Sensor(en) eine Veränderung gegenüber dem anfänglichen oder erwarteten (vorprogrammierten) Messwert erfahren haben (Operation 1512). Wenn sich beispielsweise nur die Werte für Zeile 3 und Spalte 4 geändert haben, ermittelt der Mikrocontroller 628, dass der Sensor in Zeile 3 und Spalte 4 manipuliert wurde. In einer beispielhaften Ausführungsform speichert der Mikrocontroller 628 die Identifizierung des manipulierten Sensors/der manipulierten Sensoren zur Weiterleitung an ein externes Gerät über den RFID-Tag (oder ein anderes Kommunikationsgerät) (Operation 1516). In einer beispielhaften Ausführungsform wird die Identifizierung des/der manipulierten Sensors/Sensoren zusammen mit dem Zeitstempel gespeichert, der den Zeitpunkt angibt, zu dem die Manipulation erkannt wurde.
-
In einer beispielhaften Ausführungsform kann die Fähigkeit, zu ermitteln, wann eine Tasche geöffnet wurde, sobald eine Packung 600 einen Verbraucher erreicht, auch dazu verwendet werden, die Verwendung des Arzneimittels durch den Verbraucher zu ermitteln und beispielsweise sicherzustellen, dass ein Patient die medizinischen Anweisungen ordnungsgemäß befolgt. Beispielhaft kann das Verfahren 1500 verwendet werden, um den Eintrag zu erfassen, zu welchem Zeitpunkt die einzelnen Taschen geöffnet wurden. Die aufgezeichneten Zeitabläufe können dann mit der vorgeschriebenen Zeit und Dosierung für die Einnahme des Arzneimittels verglichen werden.
-
In Anbetracht der bisherigen Erörterung wird gewürdigt, dass gemäß einem Aspekt der Erfindung ein beispielhaftes Verfahren die folgenden Operationen umfasst: Erfassen eines Wertes von jeder Spalte und Zeile einer entsprechenden Matrix von Sensoren 708, 1012 (Operation 1504); Vergleichen der Werte mit einem anfänglichen oder erwarteten Messwert der entsprechenden Matrix von Sensoren 708, 1012, um eine oder mehrere Spalten und eine oder mehrere Zeilen mit veränderten Werten zu ermitteln (Operation 1508); und Ermitteln eines oder mehrerer Sensoren, die der einen oder mehreren anfänglich ermittelten Spalten und der einen oder mehreren ermittelten Zeilen entsprechen (Operation 1512).
-
In einer beispielhaften Ausführungsform umfasst ein Gerät zum Erkennen einer Manipulation eines Produkts in einem Produktverpackungsmaterial: ein Netzwerk von Sensoren 712, 812, 912, 1012, die in das Produktverpackungsmaterial integriert sind; einen Mikrocontroller 628, der so konfiguriert ist, dass er durch Zugriff auf die Sensoren des Sensornetzwerks 712, 812, 912, 1012 die Manipulation des Produktverpackungsmaterials erkennt; und eine Kommunikationsvorrichtung zur Weitergabe von Informationen bezüglich eines Zustands des Produktverpackungsmaterials.
-
In einer beispielhaften Ausführungsform umfasst das Gerät ferner eine Dünnschichtbatterie zur Stromversorgung von mindestens dem Mikrocontroller 628. In einer beispielhaften Ausführungsform ist die Dünnschichtbatterie so konfiguriert, dass sie von einem Abtastgerät aufgeladen wird, das Informationen von dem Mikrocontroller 628 erhält. In einer beispielhaften Ausführungsform umfasst das Gerät ferner ein flexibles Substrat mit einer Dicke von 1-2 mm, wobei das flexible Substrat konfigurierbar ist, um an das Produktverpackungsmaterial angeformt zu werden. In einer beispielhaften Ausführungsform befindet sich das flexible Substrat zwischen einer Deckschicht 624 und einer Klebeschicht 616 des Produktverpackungsmaterials.
-
In einer beispielhaften Ausführungsform umfasst das Gerät ferner einen analogen Multiplexer und einen Analog-Digital-Wandler (ADC) 636, die so konfiguriert sind, dass sie es dem Mikrocontroller 628 ermöglichen, die Sensoren des Sensornetzwerks 712, 812, 912, 1012 abzutasten. In einer beispielhaften Ausführungsform ist der Mikrocontroller 628 so konfiguriert, dass er die erhaltenen Informationen speichert, eine oder mehrere Stellen des Produktverpackungsmaterials ermittelt, an denen Manipulationen vorgenommen wurden, und einen Zeitstempel erstellt, der einen Zeitpunkt des Zugriffs auf den Sensor angibt. In einer beispielhaften Ausführungsform ist der Mikrocontroller 628 so konfiguriert, dass er die Daten verschlüsselt und drahtlos über einen Radiofrequenz-Identifizierungs-Tag 632 oder einen drahtlosen Link an ein externes Gerät weiterleitet. In einer beispielhaften Ausführungsform ist jeder Sensor des Sensornetzwerks 712 als ein Kondensator 700 implementiert, wobei der Kondensator 700 mindestens zwei parallele Metallplatten 704-1, 704-2 umfasst, wobei sich eine Kapazität des Sensors in Reaktion auf eine Manipulation des Produktverpackungsmaterials ändert. In einer beispielhaften Ausführungsform ist jeder Sensor des Sensornetzwerks 812 als ein Widerstandssensor 800 implementiert, der eine Metalldrahtleitung 804-1 umfasst, wobei sich ein Widerstand des Widerstandssensors 800 in Reaktion auf eine Manipulation des Produktverpackungsmaterials ändert.
-
In einer beispielhaften Ausführungsform fungiert der Widerstandssensor 800 als Erfassungs-Dehnungsmessstreifen, der eine Menge an Kraft misst, die auf den Widerstandssensor 800 ausgeübt wird, und ein Widerstandswert des Widerstandssensors 800 ist relativ zu der Menge an Kraft. In einer beispielhaften Ausführungsform ist jeder Sensor des Sensornetzwerks 912 als Schwingkreis 904 implementiert, wobei sich eine Phase oder eine Frequenz des Sensors in Reaktion auf eine Manipulation des Produktverpackungsmaterials ändert. In einer beispielhaften Ausführungsform wird der Mikrocontroller 628 mit einer erwarteten Frequenz, Phase oder beidem jedes Sensors programmiert, wobei der Schwingkreis 904 eine andere Phase, eine andere Frequenz oder keine Frequenz erzeugt, wenn das Produktverpackungsmaterial manipuliert wird. In einer beispielhaften Ausführungsform ist der Schwingkreis 904 ständig aktiv oder wird nur periodisch durch den Mikrocontroller 628 aktiviert. In einer beispielhaften Ausführungsform ist jeder Sensor des Sensornetzwerks 1012 als ein optischer Sensor 1000 implementiert.
-
In einer beispielhaften Ausführungsform wird der optische Sensor 1000 über Nahfeldkommunikation (NFC) mit Strom versorgt und kann einen bestimmten Barcode, ein Hologramm oder eine Signatur eines Arzneimittels lesen. In einer beispielhaften Ausführungsform kann der optische Sensor 1000 ein Muster aus reflektiertem Licht oder ein eingebettetes Zeichen in einem Arzneimittel erkennen. In einer beispielhaften Ausführungsform wird der Mikrocontroller 628 mit einer erwarteten Signatur des Arzneimittels programmiert und die vom optischen Sensor 1000 erhaltenen Informationen werden analysiert, um zu ermitteln, ob das Arzneimittel echt ist. In einer beispielhaften Ausführungsform ist das Netzwerk von Sensoren 712, 812, 912, 1012 modular aufgebaut und so konfiguriert, dass es die Wände von zylindrischen Behältern, quadratischen Behältern, rechteckigen Behältern, ovalen Behältern oder einer beliebigen Kombination davon auskleidet.
-
Eine oder mehrere Ausführungsformen der Erfindung oder Elemente davon können in Form einer Vorrichtung implementiert werden, die einen Speicher und mindestens einen Prozessor umfasst, der mit dem Speicher verbunden ist und beispielhafte Verfahrensschritte ausführt. 21 stellt ein Computersystem dar, das bei der Implementierung eines oder mehrerer Aspekte und/oder Elemente der Erfindung nützlich sein kann und auch für einen Cloud-Computing-Knoten gemäß einer Ausführungsform der vorliegenden Erfindung repräsentativ ist. Bezug nehmend auf 21 ist der Cloud-Computing-Knoten 10 nur ein Beispiel für einen geeigneten Cloud-Computing-Knoten und soll keine Einschränkung hinsichtlich des Umfangs der Verwendung oder der Funktionalität der hierin beschriebenen Ausführungsformen der Erfindung suggerieren. Ungeachtet dessen kann der Cloud Computing-Knoten 10 implementiert werden und/oder jede der hierin beschriebenen Funktionen ausführen.
-
Im Cloud-Computing-Knoten 10 befindet sich ein Computersystem/Server 12, das mit zahlreichen anderen Allzweck- oder Spezial-Computer-Systemumgebungen oder - Konfigurationen in Betrieb ist. Beispiele für bekannte Computersysteme, Umgebungen und/oder Konfigurationen, die zur Verwendung mit dem Computersystem/Server 12 geeignet sein können, beinhalten, sind aber nicht beschränkt auf, Personalcomputersysteme, Servercomputersysteme, Thin Clients, Thick Clients, Handheld- oder Laptop-Geräte, Multiprozessorsysteme, mikroprozessorbasierte Systeme, Set-Top-Boxen, programmierbare Verbraucherelektronik, Netzwerk-PCs, Minicomputersysteme, Großrechner-Computersysteme und verteilte Cloud-Computing-Umgebungen, die eines der oben genannten Systeme oder Geräte beinhalten, und dergleichen.
-
Computersystem/Server 12 kann im allgemeinen Kontext von Computersystemausführbaren Anweisungen, wie z. B. Programmmodulen, beschrieben werden, die von einem Computersystem ausgeführt werden. Im Allgemeinen können Programmmodule Routinen, Programme, Objekte, Komponenten, Logik, Datenstrukturen und so weiter beinhalten, die bestimmte Aufgaben ausführen oder bestimmte abstrakte Typen von Daten implementieren. Das Computersystem/Server 12 kann in verteilten Cloud-Computing-Umgebungen eingesetzt werden, wobei die Aufgaben von Remote-Verarbeitungsgeräten ausgeführt werden, die über ein Kommunikationsnetzwerk verbunden sind. In einer verteilten Cloud-Computing-Umgebung können sich Programmmodule sowohl in lokalen als auch in Remote-Computer-System-Speichermedien befinden, die Speichergeräte umfassen.
-
Wie in 21 dargestellt, ist das Computersystem/Server 12 im Cloud-Computing-Knoten 10 in der Form einer Allzweck-Computer-Vorrichtung abgebildet. Die Komponenten des Computersystems/Servers 12 können unter anderem einen oder mehrere Prozessoren oder Verarbeitungseinheiten 16, einen Systemspeicher 28 und einen Bus 18 umfassen, der verschiedene Systemkomponenten einschließlich des Systemspeichers 28 mit dem Prozessor 16 verbindet.
-
Bus 18 stellt einen oder mehrere von mehreren Typen von Busstrukturen dar, die einen Speicherbus oder eine Steuereinheit, einen Peripheriebus, einen beschleunigten Grafikanschluss und einen Prozessor- oder lokalen Bus umfassen, wobei eine beliebige Vielzahl von Busarchitekturen verwendet wird. Beispielhaft und ohne Einschränkung umfassen solche Architekturen den ISA-Bus (Industry Standard Architecture), den MCA-Bus (Micro Channel Architecture), den EISA-Bus (Enhanced ISA), den lokalen Bus der Video Electronics Standards Association (VESA) und den PCI-Bus (Peripheral Component Interconnect).
-
Das Computersystem/der Server 12 beinhaltet typischerweise eine Vielzahl von durch das Computersystem lesbaren Medien. Solche Medien können alle verfügbaren Medien sein, auf die das Computersystem/der Server 12 zugreifen kann, und sie umfassen sowohl flüchtige als auch nichtflüchtige, entfernbare und nicht entfernbare Medien.
-
Der Systemspeicher 28 kann für das Computersystem lesbare Medien in Form eines flüchtigen Speichers beinhalten, wie z. B. Direktzugriffspeicher (RAM) 30 und/oder Cache-Speicher 32. Das Computersystem/Server 12 kann ferner andere entfernbare/nicht entfernbare, flüchtige/nicht flüchtige Speichermedien des Computersystems beinhalten. Nur beispielhaft kann das Speichersystem 34 zum Lesen und Schreiben von und auf ein nicht entfernbares, nicht flüchtiges magnetisches Medium (nicht dargestellt und typischerweise als „Festplatte“ bezeichnet) bereitgestellt werden. Obwohl nicht gezeigt, können auch ein Magnetplattenlaufwerk zum Lesen von und Schreiben auf eine entnehmbare, nicht flüchtige Magnetplatte (z. B. eine „Floppy-Disk“) und ein optisches Plattenlaufwerk zum Lesen von oder Schreiben auf eine entnehmbare, nicht flüchtige optische Platte wie eine CD-ROM, DVD-ROM oder ein anderes optisches Medium bereitgestellt werden. In solchen Fällen können jede dieser Komponenten über eine oder mehrere Datenmedienschnittstellen mit dem Bus 18 verbunden werden. Wie weiter unten dargestellt und beschrieben wird, kann der Speicher 28 mindestens ein Programmprodukt mit einer Menge (z. B. mindestens einem) von Programmmodulen beinhalten, die so konfiguriert sind, dass sie die Funktionen der Ausführungsformen der Erfindung ausführen.
-
Programm/Utility 40 mit einer Menge (mindestens einem) von Programmmodulen 42 kann beispielhaft und ohne Einschränkung im Speicher 28 gespeichert sein, ebenso wie ein Betriebssystem, ein oder mehrere Anwendungsprogramme, andere Programmmodule und Programmdaten. Jedes der Betriebssysteme, ein oder mehrere Anwendungsprogramme, andere Programmmodule und Programmdaten oder eine Kombination davon kann eine Implementierung einer Netzwerkumgebung beinhalten. Die Programmmodule 42 führen im Allgemeinen die Funktionen und/oder Methoden der hier beschriebenen Ausführungsformen der Erfindung aus.
-
Das Computersystem/der Server 12 kann auch mit einem oder mehreren externen Geräten 14 wie einer Tastatur, einem Zeigegerät, einer Anzeige 24 usw. kommunizieren; mit einem oder mehreren Geräten, die es einem Benutzer ermöglichen, mit dem Computersystem/Server 12 zu interagieren; und/oder mit beliebigen Geräten (z. B. Netzwerkkarte, Modem usw.), die es dem Computersystem/Server 12 ermöglichen, mit einem oder mehreren anderen Rechengeräten zu kommunizieren. Eine solche Kommunikation kann über Eingabe/Ausgabe-Schnittstellen (E/A) 22 erfolgen. Dennoch kann das Computersystem/Server 12 über den Netzwerkadapter 20 mit einem oder mehreren Netzwerken wie einem lokalen Netzwerk (LAN), einem allgemeinen Weitverkehrsnetzwerk (WAN) und/oder einem öffentlichen Netzwerk (z. B. dem Internet) kommunizieren. Wie dargestellt, kommuniziert der Netzwerkadapter 20 über den Bus 18 mit den anderen Komponenten des Computersystems/Servers 12. Es versteht sich von selbst, dass auch andere Hardware- und/oder Softwarekomponenten in Verbindung mit dem Computersystem/Server 12 verwendet werden können, auch wenn sie nicht dargestellt sind. Beispiele beinhalten, sind aber nicht beschränkt auf: Mikrocode, Gerätetreiber, redundante Verarbeitungseinheiten und externe Plattenlaufwerk-Arrays, RAID-Systeme, Bandlaufwerke und Datenarchivierungssysteme usw.
-
So können eine oder mehrere Ausführungsformen Software verwenden, die auf einem Allzweck-Computer oder einer Workstation läuft. In Bezug auf 21 könnte eine solche Implementierung beispielhaft einen Prozessor 16, einen Speicher 28 und eine Eingabe-/Ausgabeschnittstelle 22 zu einer Anzeige 24 und einem oder mehreren externen Geräten 14 wie einer Tastatur, einem Zeigegerät oder dergleichen verwenden. Der Begriff „Prozessor“, wie er hier verwendet wird, soll jedes Verarbeitungsgerät beinhalten, wie z.B. eines, das eine CPU (Zentralverarbeitungseinheit) und/oder andere Formen von Verarbeitungsschaltungen umfasst. Ferner kann sich der Begriff „Prozessor“ auf mehr als einen einzelnen Prozessor beziehen. Der Begriff „Speicher“ soll einen mit einem Prozessor oder einer CPU verknüpften Speicher beinhalten, wie z. B. RAM (Direktzugriffspeicher) 30, ROM (Nur-Lese-Speicher), ein festes Speichergerät (z. B. Festplatte 34), ein Wechselspeichergerät (z. B. Diskette), einen Flash-Speicher und dergleichen. Hinzufügung: Der Begriff „Eingabe-/Ausgabeschnittstelle“, wie er hier verwendet wird, soll eine Schnittstelle zu beispielsweise einem oder mehreren Mechanismen für die Eingabe von Daten in die Verarbeitungseinheit (z. B. Maus) und einem oder mehreren Mechanismen zum Bereitstellen von Ergebnissen, die mit der Verarbeitungseinheit verknüpft sind (z. B. Drucker), bezeichnen. Der Prozessor 16, der Speicher 28 und die Eingabe-/Ausgabeschnittstelle 22 können beispielhaft über den Bus 18 als Teil einer Datenverarbeitungseinheit 12 miteinander verbunden werden. Geeignete Verbindungen, beispielhaft über den Bus 18, können auch zu einer Netzwerkschnittstelle 20, wie z. B. einer Netzwerkkarte, die zur Verbindung mit einem Computernetzwerk bereitgestellt werden kann, und zu einer Medienschnittstelle, wie z. B. einem Disketten- oder CD-ROM-Laufwerk, die zur Verbindung mit geeigneten Medien bereitgestellt werden kann, hergestellt werden.
-
Dementsprechend kann Computersoftware, die Anweisungen oder Codes zur Durchführung der hier beschriebenen erfindungsgemäßen Verfahren umfasst, in einem oder mehreren der verknüpften Geräte (z. B. ROM, Fest- oder Wechselspeicher) gespeichert und, wenn sie zur Verwendung bereit ist, ganz oder teilweise geladen (z. B. in RAM) und von einer CPU ausgeführt werden. Eine solche Software könnte Firmware, residente Software, Mikrocode und dergleichen beinhalten, ist aber nicht darauf beschränkt.
-
Ein Datenverarbeitungssystem, das zum Speichern und/oder Ausführen von Programmcode geeignet ist, beinhaltet mindestens einen Prozessor 16, der über einen Systembus 18 direkt oder indirekt mit Speicherelementen 28 verbunden ist. Die Speicherelemente können einen lokalen Speicher beinhalten, der während der tatsächlichen Implementierung des Programmcodes verwendet wird, einen Massenspeicher und Cache-Speicher 32, die eine temporäre Speicherung zumindest eines Teils des Programmcodes bereitstellen, um die Anzahl der Abrufe des Codes aus dem Massenspeicher während der Implementierung zu reduzieren.
-
Eingabe-/Ausgabe- oder E/A-Geräte (einschließlich, aber nicht beschränkt auf Tastaturen, Anzeigen, Zeigegeräte und dergleichen) können entweder direkt oder über dazwischen eingeschaltete E/A-Steuereinheiten mit dem System verbunden werden.
-
Netzwerkadapter 20 können auch an das System gekoppelt werden, um dem Datenverarbeitungssystem zu ermöglichen, über dazwischen eingeschaltete private oder öffentliche Netzwerke mit anderen Datenverarbeitungssystemen oder Remote-Druckern oder -Speichergeräten verbunden zu werden. Modems, Kabelmodems und Ethernet-Karten sind nur einige der derzeit verfügbaren Typen von Netzwerkadaptern.
-
Wie hier verwendet, einschließlich der Ansprüche, umfasst ein „Server“ ein physisches Datenverarbeitungssystem (beispielhaft das in 21 gezeigte System 12), auf dem ein Serverprogramm läuft. Es versteht sich, dass ein solcher physischer Server eine Anzeige und eine Tastatur beinhalten kann, aber nicht muss.
-
Eine oder mehrere Ausführungsformen können zumindest teilweise im Zusammenhang mit einer Cloud- oder virtuellen Maschinenumgebung implementiert werden, obwohl dies beispielhaft und nicht einschränkend ist. Es wird auf die 1-2 und den begleitenden Text verwiesen.
-
Es ist zu beachten, dass jedes der hier beschriebenen Verfahren einen zusätzlichen Schritt beinhalten kann, der darin besteht, ein System bereitzustellen, das verschiedene Softwaremodule umfasst, die auf einem computerlesbaren Speichermedium verkörpert sind; die Module können beispielsweise alle oder einige der geeigneten Elemente umfassen, die in den Blockdiagrammen dargestellt und/oder hier beschrieben sind; beispielhaft und ohne Einschränkung können ein beliebiges, einige oder alle der beschriebenen Module/Blöcke und/oder Sub-Module/Sub-Blöcke verwendet werden. Die Verfahrensschritte können dann unter Verwendung der verschiedenen Software-Module und/oder Sub-Module des Systems, wie oben beschrieben, auf einem oder mehreren Hardware-Prozessoren wie 16 ausgeführt werden. Ferner kann ein Computerprogrammprodukt ein computer-lesbares Speichermedium mit einem Code umfassen, der geeignet ist, zur Durchführung eines oder mehrerer hierin beschriebener Verfahrensschritte implementiert zu werden, einschließlich der Bereitstellung des Systems mit den verschiedenen Softwaremodulen.
-
Ein beispielhaftes Benutzerinterface, das in einigen Fällen verwendet werden könnte, ist Hypertext Markup Language (HTML)-Code, der von einem Server oder dergleichen an einen Browser eines Rechengerätes eines Benutzers ausgegeben wird. Der HTML-Code wird vom Browser auf dem Rechengerät des Benutzers geparst, um eine grafische Benutzeroberfläche (GUI) zu erstellen.
-
Beispielhaftes System und Details des Herstellungsgegenstandes
-
Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt auf jeder möglichen technischen Detailstufe der Integration handeln. Das Computerprogrammprodukt kann ein computerlesbares Speichermedium (oder Medien) mit darauf befindlichen computerlesbaren Programmanweisungen umfassen, die einen Prozessor veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
-
Bei dem computerlesbaren Speichermedium kann es sich um eine greifbare Vorrichtung handeln, die Befehle zur Verwendung durch eine Befehlsausführungsvorrichtung aufbewahren und speichern kann. Bei dem computerlesbaren Speichermedium kann es sich beispielsweise um eine elektronische Speichervorrichtung, eine magnetische Speichervorrichtung, eine optische Speichervorrichtung, eine elektromagnetische Speichervorrichtung, eine Halbleiterspeichervorrichtung oder eine beliebige geeignete Kombination der vorgenannten Vorrichtungen handeln, ist aber nicht darauf beschränkt. Eine nicht erschöpfende Liste spezifischerer Beispiele für ein computerlesbares Speichermedium umfasst Folgendes: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Festwertspeicher (ROM), ein löschbarer programmierbarer Festwertspeicher (EPROM oder Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer Compact-Disc-Festwertspeicher (CD-ROM), eine Digital Versatile Disk (DVD), ein Memory-Stick, eine Diskette, eine mechanisch kodierte Vorrichtung wie Lochkarten oder erhabene Strukturen in einer Rille mit darauf aufgezeichneten Befehlen sowie jede geeignete Kombination der vorgenannten. Ein computerlesbares Speichermedium, wie es hier verwendet wird, ist nicht so zu verstehen, dass es sich um transitorische Signale an sich handelt, wie z. B. Radiowellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z. B. Lichtimpulse, die durch ein Glasfaserkabel laufen), oder elektrische Signale, die durch einen Draht übertragen werden.
-
Die hier beschriebenen computerlesbaren Programmanweisungen können von einem computerlesbaren Speichermedium auf die jeweiligen Rechen-/Verarbeitungsgeräte oder auf einen externen Computer oder ein externes Speichergerät über ein Netzwerk, z. B. das Internet, ein lokales Netzwerk, ein Weitverkehrsnetzwerk und/oder ein drahtloses Netzwerk, heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, optische Übertragungsfasern, drahtlose Übertragung, Router, Firewalls, Switches, Gateway-Computer und/oder Edge-Server umfassen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jedem Computer/Verarbeitungsgerät empfängt computerlesbare Programmanweisungen aus dem Netzwerk und leitet die computerlesbaren Programmanweisungen zur Speicherung in einem computerlesbaren Speichermedium im jeweiligen Computer/Verarbeitungsgerät weiter.
-
Computerlesbare Programmanweisungen zur Durchführung von Operationen im Sinne der vorliegenden Erfindung können Assembler-Befehle, ISA-Befehle (Instruktionssatzarchitektur), Maschinenbefehle, maschinenabhängige Befehle, Mikrocode, Firmware-Befehle, Zustandsdaten, Konfigurationsdaten für integrierte Schaltkreise oder entweder Quellcode oder Objektcode sein, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen, einschließlich einer objektorientierten Programmiersprache wie Smalltalk, C++ oder ähnlichen, und prozeduralen Programmiersprachen wie der Programmiersprache „C“ oder ähnlichen Programmiersprachen geschrieben sind. Die computerlesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Softwarepaket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernten Computer oder vollständig auf dem entfernten Computer oder Server ausgeführt werden. Im letztgenannten Fall kann der entfernte Computer mit dem Computer des Benutzers über eine beliebige Art von Netzwerk verbunden sein, einschließlich eines lokalen Netzwerks (LAN) oder eines Weitverkehrsnetzwerks (WAN), oder die Verbindung kann zu einem externen Computer hergestellt werden (z. B. über das Internet unter Verwendung eines Internetdienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, die beispielsweise programmierbare Logikschaltungen, feldprogrammierbare Gate-Arrays (FPGA) oder programmierbare Logik-Arrays (PLA) umfassen, die computerlesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der computerlesbaren Programmanweisungen verwenden, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
-
Aspekte der vorliegenden Erfindung werden hier unter Bezugnahme auf Flussdiagrammabbildungen und/oder Blockdiagramme von Verfahren, Geräten (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es versteht sich, dass jeder Block der Flussdiagrammdarstellungen und/oder Blockdiagramme und Kombinationen von Blöcken in den Flussdiagrammdarstellungen und/oder Blockdiagrammen durch computerlesbare Programmanweisungen implementiert werden können.
-
Diese computerlesbaren Programmanweisungen können einem Prozessor eines Allzweck-Computers, eines Spezial-Computers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung zur Verfügung gestellt werden, um eine Maschine zu erzeugen, so dass die Anweisungen, die über den Prozessor des Computers oder der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführt werden, Mittel zur Implementierung der im Flussdiagramm und/oder Blockdiagramm angegebenen Funktionen/Aktionen schaffen. Diese computerlesbaren Programmanweisungen können auch in einem computerlesbaren Speichermedium gespeichert werden, das einen Computer, ein programmierbares Datenverarbeitungsgerät und/oder andere Vorrichtungen anweisen kann, in einer bestimmten Weise zu funktionieren, so dass das computerlesbare Speichermedium, in dem Anweisungen gespeichert sind, einen Herstellungsgegenstand umfasst, der Anweisungen enthält, die Aspekte der in dem Flussdiagramm und/oder dem Blockdiagrammblock oder den Blöcken angegebenen Funktion/Aktion implementieren.
-
Die computerlesbaren Programmanweisungen können auch auf einen Computer, ein anderes programmierbares Datenverarbeitungsgerät oder ein anderes Gerät geladen werden, um eine Reihe von Betriebsschritten zu veranlassen, die auf dem Computer, einem anderen programmierbaren Gerät oder einem anderen Gerät ausgeführt werden, um einen computerimplementierten Prozess zu erzeugen, so dass die Anweisungen, die auf dem Computer, einem anderen programmierbaren Gerät oder einem anderen Gerät ausgeführt werden, die in dem Flussdiagramm und/oder dem Blockdiagrammblock oder den Blöcken angegebenen Funktionen/Aktionen implementieren.
-
Die Flussdiagramme und Blockdiagramme in den Abbildungen veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Implementierungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block im Flussdiagramm oder in den Blockdiagrammen ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, das bzw. der eine oder mehrere ausführbare Anweisungen zur Implementierung der angegebenen logischen Funktion(en) umfasst. In einigen alternativen Implementierungen können die in den Blöcken angegebenen Funktionen in einer anderen als der in den Abbildungen angegebenen Reihenfolge auftreten. So können beispielsweise zwei nacheinander gezeigte Blöcke in Wirklichkeit in einem Schritt ausgeführt werden, und zwar im Wesentlichen gleichzeitig, oder die Blöcke können manchmal in umgekehrter Reihenfolge ausgeführt werden, je nach der betreffenden Funktionalität. Es wird auch darauf hingewiesen, dass jeder Block der Blockdiagramme und/oder Flussdiagramme sowie Kombinationen von Blöcken in den Blockdiagrammen und/oder Flussdiagrammen durch spezielle Hardware-basierte Systeme implementiert werden können, die die angegebenen Funktionen oder Handlungen ausführen oder Kombinationen von spezieller Hardware und Computerbefehlen ausführen.
-
Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Erfindung dienen der Veranschaulichung, erheben jedoch nicht den Anspruch auf Vollständigkeit oder Beschränkung auf die offengelegten Ausführungsformen. Viele Modifikationen und Variationen werden für den Fachmann offensichtlich sein, ohne dass der Umfang und der Geist der beschriebenen Ausführungsformen beeinträchtigt werden. Die hier verwendete Terminologie wurde gewählt, um die Prinzipien der Ausführungsformen, die praktische Anwendung oder die technische Verbesserung gegenüber den auf dem Markt befindlichen Technologien bestmöglich zu erläutern oder um es anderen, die sich mit der Materie auskennen, zu ermöglichen, die hier offengelegten Ausführungsformen zu verstehen.