Micro SmaSvr 

 スマートフォン、タブレット端末から業務用周辺機器を制御

 

ホーム > SmaSvrシリーズ > Micro SmaSvr

製品一覧

 

 

テクノベインズでは、スマートデバイスなどからレシートプリンタなどの業務用周辺機器を利用するための「SmaSvr(スマサバ)」という

システム(概念)を考案しました。

SmaSvrはWeb動作環境、AP接続を行うアクセス環境、周辺機器接続環境を1つのコントローラ内に納めることで、スマートフォンなどから

周辺機器をアクセスするWebプログラムをローカルで実行するものです。

 

 

SmaSvrは複数ユニットの周辺機器を制御するため少し大きなシステムになります。

では、Micro SmaSvrとは?

Micro SmaSvrとは、レシートプリンタなどの単一の周辺機器を、スマートフォン・タブレット端末から制御することができ、

また、小型で低価格な装置となります。

 

Micro SmaSvrは、LANを経由してシリアル機器を制御するネットワーク対応コントローラDS1206(右図)をベースに用いて

います。DS1206は組み込み専用TiOSにより動作するコントローラで、専用のプログラム言語で、限定した機能のWebサー

バーを構築しています。

DS1206の内部メモリにテクノベインズ開発のプログラムを組み込んでいます。

 

機能を限定したWebサーバとROM化されたプログラムにより、パソコンやスマートフォンやタブレット端末などブラウザを

内蔵する機器からそのままアクセスが可能となり、Micro SmaSvrとシリアル接続をしている機器の制御が行えます。

モバイルルータなどアクセスポイントを接続することで、iPhoneやiPadやAndroid端末などとWi-Fi接続として利用できます。

 

Micro SmaSvrの詳細はこちらをご参照ください

Micro SmaSvr (DS1206)

 

 

 

 

 

 

MicroSmaSvrは以下の3通りのタイプがございます。


 

Micro SmaSvr Post(マイクロ スマサバ ポスト)

 

  外部サーバーにアプリケーションを置く場合の方法です。

 

 

  特徴  
    HTMLのフォームのPOST送信を利用して周辺機器を制御します Webブラウザ開発経験者は開発が簡単に行えます
    外部サーバーにアプリを置き、ローカルで周辺機器の制御が可能です 従来のアプリケーションに組み込みしやすい
     

 

   
 

お客さまのアプリケーションをクラウドなどの外部サーバ上に置く場合の構成です。PCやスマート端末とMicroSmaSvrは

同じネットワーク上にあることが前提です。

この場合、「MicroSmaSvr Post」という弊社製品を利用することができます。「MicroSmaSvr Post」はHTMLのフォーム

のPOST送信を利用して周辺機器を制御する機能です。外部サーバ上にあるお客様のプログラムの一部にJavaScriptで

以下のように記述するだけで、MicroSmaSvrから周辺機器を制御できます。

 

※ブラウザーによる通信はエラー発生を考慮する必要があり、ブラウザが通信エラーした場合は、オペレーターが再読込を行えるようなアプリ開発が必要です。

 

// 送信ボタンを押すとMicroSmaSvrに接続されたプリンタに「Hello」と印字する例

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" />
<script type="text/JavaScript"><!--
        function MicroSmasvrSubmit() {
            var dNow = new Date();
            var pYear = "" + dNow.getFullYear();
            var pMonth = str2(dNow.getMonth()+1);
            var pDay = str2(dNow.getDate());
            var pHour = str2(dNow.getHours());
            var pMinute = str2(dNow.getMinutes());
            var pSecond = str2(dNow.getSeconds());

            //現在日時をmicroSmaSvrに渡す
            hello.CLK.value = pYear + pMonth + pDay + pHour + pMinute + pSecond;

            //印字文字列作成
            var strData = new String();
            strData = '$PI$ACHello$Ar$Ar$Ar$Ar$Ar$PC';

            //印字文字列をmicroSmaSvrに渡す
            hello.PIPETHRUM.value = strData;

            hello.action = "http://MicroSmaSvrのIPアドレス/index.html";
            hello.submit();
        }

        //2ケタ揃え
        function str2(val){
            if (val < 10)
                return "0" + val;
            else
                return "" + val;
        }
//--></script>
</head>
<body>
<iframe name="pop1" style="display:none;" width="100" height="100"></iframe>
<form name="hello" method="post" target="pop1" Accept-charset="Shift_JIS">
<input type="hidden" name="CLK" value="" >
<input type="hidden" name="PIPETHRUM" value="" >
<input type="hidden" name="CMD" value="POSTHTML">
<input type="submit" onclick="MicroSmasvrSubmit();" value="送信" />
</form>
</body>
</html>

				

 

 

 

   下記のようにチェーン(パススルー)接続を行う場合は、カスタマディスプレイ、レシートプリンタ、キャッシュドロワのコマンドを

   WebアプリからMicroSmasvrへ送ることで、制御が可能になります。

   詳しくはお問い合わせください。

 

 

 

 

 


 

Micro SmaSvr Sock(マイクロ スマサバ ソック)

 

  スマート端末にアプリケーションを置く場合の方法です。

 

 

  特徴  
   

ソケット通信の受け側になります

スマートフォンのブラウザ上でソケットの設定ができる
   

TCP/IPのソケットサーバとして働きます。

Micro SmaSvrのマクロコマンドを使うことができます。

     ESC/POSコマンドを送ることでプリンタを細かく制御することができます。

     また、マクロコマンドにより簡易的にプリンタを印刷できます。

ソケットコマンドはTCP/IPを使うために高速で大きな

     データを送ることができます。

   

※こちらはWebSocketとは異なります。

※TCPのソケット通信は線が確保されているので通信に関して信頼性のあるプロトコルです。

 

 
Micro SmaSvr Sockの機能を用いた製品が弊社販売の「LAN対応キャッシュドロワ DWM36SLN」です

 

   
 

スマート端末内に、iPhoneアプリやAndroidアプリを置く場合の構成です。PCやスマート端末とMicroSmaSvrは同じ

ネットワーク上にあることが前提です。

この場合、「MicroSmaSvr Sock」という弊社製品を利用することができます。「MicroSmaSvr Sock」は、スマート端末

からMicroSmaSvrへソケット通信でアクセスします。以下はAndroidのJavaプログラムの例です。

 

// 送信ボタンを押すとMicroSmaSvrに接続されたプリンタに「こんにちは」と印字する例

package com.example.socksample;

import java.io.OutputStream;
import java.net.InetSocketAddress;
import java.net.Socket;
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;

public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button button1 = (Button) findViewById(R.id.button1);
        button1.setOnClickListener(new MyOnClickListener());
    }

    public class MyOnClickListener implements OnClickListener {
        public void onClick(View view) {
                Socket sock = null;
                try {
                        //1B 40 初期化
                        //0D 印字復帰
                        //1B 52 08 国際文字の選択
                        //1B 74 01 文字コードテーブルの選択
                        //1C 43 01 JIS指定
                        //0A 印字改行
                        byte[] disp1 = {0x1B, 0x40, 0x0D, 0x1B, 0x52, 0x08, 0x1B, 0x74, 0x01, 0x1C, 0x43, 0x01};
                        byte[] disp2 = "こんにちは".getBytes("Shift_JIS");
                        byte[] disp3 = {0x0A};

                        byte[] disp = new byte[disp1.length + disp2.length + disp3.length];

                        System.arraycopy(disp1, 0, disp, 0, disp1.length);
                        System.arraycopy(disp2, 0, disp, disp1.length, disp2.length);
                        System.arraycopy(disp3, 0, disp, disp1.length + disp2.length, disp3.length);

                        sock = new Socket();
                        sock.connect(new InetSocketAddress(MicroSmaSvrのIPアドレス, MicroSmaSvrのポート番号));

                        OutputStream out = sock.getOutputStream();

                        if(view.getId() == R.id.button1) {
                            out.write(disp,0,disp.length);
                        }

                } catch (Exception e) {
                        e.printStackTrace();
                }

                if(sock != null){
                        try {
                            sock.close();
                            sock = null;
                        } catch (Exception e) {
                            e.printStackTrace();
                        }
                }
          }
    }
}
				
※ ソケット通信ではAndroidManifest.xmlファイルに以下のパーミッションを追加して下さい。
<uses-permission android:name="android.permission.INTERNET"/>

 

 

 

   下記のようにチェーン(パススルー)接続を行う場合は、ソケット通信でアクセスし、カスタマディスプレイ、レシートプリンタ、キャッシュドロワの

   コマンドをMicro SmaSvrへ送ることで制御が可能になります。

   詳しくはお問い合わせください。

 

 

 

 

 

 


 

専用アプリケーション

 

  専用アプリケーションを内蔵したMicro SmaSvrから実行し、印刷等を行います。

 

  スマサバ・プリント

    スマート端末からレシートプリンタで整理券やチケットや小券などを発行します。

    連番、複写、控え票印刷、バーコード、コメントなど簡単に印刷を行うシステムです。

    設定した内容をテンプレートとして登録することが可能です。

    

    商品名 : スマサバ・プリント または、整理券発行システムの名称で登録しています。

 

 

  専用アプリケーションは今後追加を行っていく予定です。

 

 

 

 

 


  テクノベインズ株式会社 〒113-0034 東京都文京区湯島3丁目31-4 ツナシマ第1ビル2階 電話:03-3832-7460 (平日:09:00-17:30) FAX:03-3832-7430
Techno Veins Co.,Ltd. Tsunashima Daiichi Bldg 2F, 31-4, Yushima 3, Bunkyou, Tokyo, 1130034, JAPAN. Tel:+81 3-3832-7460 FAX:+81 3-3832-7430  sales@technoveins.co.jp (弊社地図)
Copyright © 1987- Techno Veins Co.,Ltd. All Rights Reserved.