本发明涉及药品存储,尤其涉及从储药盒中取药的方法、装置、电子设备和存储介质。
背景技术:
1、在医院的药房中,通常设置有药柜,在药柜中,一般使用储药盒来存放药品,如图1所示,储药盒通常被划分为m行n列的存放位,每个存放位能够存放有一个药品;如图2所示,机械手中设置有num个排成一排的抓手11,每个抓手11均能够抓住一个药品,该机械手的num个抓手11能够同时对准同一行中的num个存放位,且能够从所对准的每个存放位中抓取一个药品(如果存放位中存放有药品)。
2、在实际中,当使用机械手快速的抓取储药盒中的药品,就成为一个亟待解决的问题。
技术实现思路
1、有鉴于此,本发明的主要目的在于提供一种从储药盒中取药的方法、装置、电子设备和存储介质。
2、为达到上述目的,本发明的技术方案是这样实现的:一种用于取药设备从储药盒中取药的方法,所述储药盒被划分为m行n列的存放位,所述存放位能够存放有一个药品,从m行的一端朝向另一端的方向,m行的编号依次为1至m;从n列的一端朝向另一端的方向,n列的编号依次为1至n;所述取药设备中设置有两个机械手,所述机械手中设置有num1个排成一排的抓手,所述抓手能够抓住一个药品;在同一行中,相邻列的存放位之间距离等于相邻抓手之间的距离;其中,m、n和num1均为自然数,且num1<n;包括以下步骤:接收取药信息,所述取药信息为从所述储药盒中取走的药品数量为num2;持续执行以下操作:当所有行中的存放位都没有存放药品时,停止此次操作的执行,并停止后续的操作的执行;选择行号最小的第一目标行,所述第一目标行中存在至少一个第一待选存放位中存放有药品;从所有第一待选存放位中获取列号最小的第一目标存放位,所述第一目标行的行号为l1,所述第一目标存放位的列号为c1;len1=min(n-c1+1,num1,num2),将num2的值减去len1,函数min()输出所有输入值中的最小值;选择行号最大的第二目标行,所述第二目标行中存在至少一个第二待选存放位中存放有药品;从所有第二待选存放位中获取列号最大的第二目标存放位,所述第二目标行的行号为l2,所述第二目标存放位的列号为c2;当l1=l2且c1+len1-1≥c2时,len2=0,否则,len2=min(c2,num1,num2),当l1=l2,且c1+len1-1≥c2-len2+1时,将len2的值减去c1+len1-c2+len2-1,将num2的值减去len2;控制一个机械手从l1行中取走列号为c1至c1+len1-1的存放位中的药品,控制另一个机械手从l2行中取走列号为c2-len2+1至c2的存放位中的药品;当num2=0时,停止执行此次的操作,并停止执行后续的操作。
3、作为本发明实施例的一种改进,所述“接收取药信息”具体包括:从his系统中接收取药信息。
4、作为本发明实施例的一种改进,所述“控制一个机械手从l1行中取走列号为c1至c1+len1-1的存放位中的药品,控制另一个机械手从l2行中取走列号为c2-len2+1至c2的存放位中的药品”具体包括:控制一个机械手中的len1个抓手对准l1行中的列号为c1至c1+len1-1的存放位并抓取药品,控制另一个机械手中的len2个抓手对准l2行中的列号为c2-len2+1至c2的存放位病抓取药品。
5、作为本发明实施例的一种改进,所述药品为溶媒。
6、本发明实施例还提供了一种用于取药设备从储药盒中取药的装置,所述储药盒被划分为m行n列的存放位,所述存放位能够存放有一个药品,从m行的一端朝向另一端的方向,m行的编号依次为1至m;从n列的一端朝向另一端的方向,n列的编号依次为1至n;所述取药设备中设置有两个机械手,所述机械手中设置有num1个排成一排的抓手,所述抓手能够抓住一个药品;在同一行中,相邻列的存放位之间距离等于相邻抓手之间的距离;其中,m、n和num1均为自然数,且num1<n;包括以下模块:信息接收模块,用于接收取药信息,所述取药信息为从所述储药盒中取走的药品数量为num2;处理模块,用于持续执行以下操作:当所有行中的存放位都没有存放药品时,停止此次操作的执行,并停止后续的操作的执行;选择行号最小的第一目标行,所述第一目标行中存在至少一个第一待选存放位中存放有药品;从所有第一待选存放位中获取列号最小的第一目标存放位,所述第一目标行的行号为l1,所述第一目标存放位的列号为c1;len1=min(n-c1+1,num1,num2),将num2的值减去len1,函数min()输出所有输入值中的最小值;选择行号最大的第二目标行,所述第二目标行中存在至少一个第二待选存放位中存放有药品;从所有第二待选存放位中获取列号最大的第二目标存放位,所述第二目标行的行号为l2,所述第二目标存放位的列号为c2;当l1=l2且c1+len1-1≥c2时,len2=0,否则,len2=min(c2,num1,num2),当l1=l2,且c1+len1-1≥c2-len2+1时,将len2的值减去c1+len1-c2+len2-1,将num2的值减去len2;控制一个机械手从l1行中取走列号为c1至c1+len1-1的存放位中的药品,控制另一个机械手从l2行中取走列号为c2-len2+1至c2的存放位中的药品;当num2=0时,停止执行此次的操作,并停止执行后续的操作。
7、作为本发明实施例的一种改进,所述信息接收模块,还用于:从his系统中接收取药信息。
8、作为本发明实施例的一种改进,所述处理模块还用于:控制一个机械手中的len1个抓手对准l1行中的列号为c1至c1+len1-1的存放位并抓取药品,控制另一个机械手中的len2个抓手对准l2行中的列号为c2-len2+1至c2的存放位病抓取药品。
9、作为本发明实施例的一种改进,所述药品为溶媒。
10、本发明实施例还提供了一种电子设备,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时,实现上述的用于取药设备从储药盒中取药的方法中的步骤。
11、本发明实施例还提供了一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时,实现上述的用于取药设备从储药盒中取药的方法的步骤。
12、本发明实施例所提供的从储药盒中取药的方法、装置、电子设备和存储介质具有以下优点:本发明实施例公开了一种从储药盒中取药的方法、装置、电子设备和存储介质,该方法包括:所述取药信息为从所述储药盒中取走的药品数量;在每次抓取的过程中,第一个机械手按照行号递增,列号递增的次序抓取药品,第二个机械手按照行号递减,列号递减的次序抓取药品。该方法能够极大地提高抓取药品的效率。
1.一种用于取药设备从储药盒中取药的方法,所述储药盒被划分为m行n列的存放位,所述存放位能够存放有一个药品,从m行的一端朝向另一端的方向,m行的编号依次为1至m;从n列的一端朝向另一端的方向,n列的编号依次为1至n;所述取药设备中设置有两个机械手,所述机械手中设置有num1个排成一排的抓手(11),所述抓手(11)能够抓住一个药品;在同一行中,相邻列的存放位之间距离等于相邻抓手(11)之间的距离;其中,m、n和num1均为自然数,且num1<n;其特征在于,包括以下步骤:
2.根据权利要求1所述的用于取药设备从储药盒中取药的方法,其特征在于,所述“接收取药信息”具体包括:
3.根据权利要求1所述的用于取药设备从储药盒中取药的方法,其特征在于,所述“控制一个机械手从l1行中取走列号为c1至c1+len1-1的存放位中的药品,控制另一个机械手从l2行中取走列号为c2-len2+1至c2的存放位中的药品”具体包括:
4.根据权利要求1所述的用于取药设备从储药盒中取药的方法,其特征在于,
5.一种用于取药设备从储药盒中取药的装置,所述储药盒被划分为m行n列的存放位,所述存放位能够存放有一个药品,从m行的一端朝向另一端的方向,m行的编号依次为1至m;从n列的一端朝向另一端的方向,n列的编号依次为1至n;所述取药设备中设置有两个机械手,所述机械手中设置有num1个排成一排的抓手(11),所述抓手(11)能够抓住一个药品;在同一行中,相邻列的存放位之间距离等于相邻抓手(11)之间的距离;其中,m、n和num1均为自然数,且num1<n;其特征在于,包括以下模块:
6.根据权利要求5所述的用于取药设备从储药盒中取药的装置,其特征在于,所述信息接收模块,还用于:
7.根据权利要求5所述的用于取药设备从储药盒中取药的装置,其特征在于,所述处理模块还用于:控制一个机械手中的len1个抓手(11)对准l1行中的列号为c1至c1+len1-1的存放位并抓取药品,控制另一个机械手中的len2个抓手(11)对准l2行中的列号为c2-len2+1至c2的存放位病抓取药品。
8.根据权利要求5所述的用于取药设备从储药盒中取药的装置,其特征在于,
9.一种电子设备,其特征在于,所述电子设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时,实现权利要求1至4中任一项所述的用于取药设备从储药盒中取药的方法中的步骤。
10.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时,实现权利要求1至4中任一项所述的用于取药设备从储药盒中取药的方法的步骤。