2020年2月8日 星期六

如何從bricklink下載某個set的XML檔轉換成LDCAD的set檔



  1. 下載 BrickUtils2.5.exe
  2. 安裝JAVA
  3. 連到bricklink下載某個set的xml檔
    以下載ev3為例,先找到這個set的item ID,我們找到的item-ID是45544-1
  4. 連到bricklink下載頁,下載45544-1的XML檔
  5. 下載Bricklink的set資料檔
  6. 執行brickUtils2.5.exe,選擇new working list,把目前工作區的part list清空

  7. 匯入Bricklink的set資料檔
  8. 執行Bricklink XML dump
  9. 選擇下載的XML檔,即會載入45544-1的part list
  10. 定義brick list(這步驟一定要做,不然之後無法匯入.pbg檔)


  11. 把一些不必要的項目如貼紙等刪除

  12. 匯出PBG檔,我們命名為45544-1.pbg
  13. 上網找45544的某個PNG圖,當作ICON的代表圖,我們命名為45544-1.png
  14. 修改45544-1.pbg(使用記事本),定義icon的代表圖名稱
  15. 將45544-1.pbg和45544-1.png,複製,貼到LDCAD的使用者資料夾
    C:\Users\user\AppData\Roaming\LDCad\partBin\default\sets
  16. 打開ldcad找到part listing of lego sets




參考:

2019年6月2日 星期日

Lego EV3 Print Bot列印機器人(含EV3 Dev的安裝)



一、ev3改為Ev3dev環境(步驟參考:https://www.ev3dev.org/docs/getting-started/
  1. 參考https://www.ev3dev.org/docs/getting-started/
  2. 下載EV3dev image file
  3. 準備一張microSD卡(不要超過32GB)
  4. 下載Etcher ,並安裝以便於將下載的EV3dev image檔燒錄到microSD卡中
  5. 執行Etcher,選擇microSD卡的位置,以及image file,並開始執行image file燒錄動作
     
  6. 將燒錄好的microSD插入EV3主機,支援EV3的wi-fi dongle也一併接上EV3的USB port
  7. 將EV3主機開機,開機完成後會出現以下畫面,畫面右上角代表電池的電壓,若電壓值於8V~6.5V之間,代表電力正常,若電壓低於5V,主機將自動關機
  8. 選擇Wireless and Network,設定wi-fi連線(使用金鑰認證),若連線成功,ev3主機螢幕上方會出現正確的IP位置
  9. 打開Pietty利用SSH,遠端連線到EV3主機的IP,預設帳號robot,預設密碼maker
  10. 執行python --version,得知目前環境預設的python是2.7版,系統也支援python3.5。執行which python,得知python的執行路徑放在/usr/bin/python,ls -al /usr/bin/python 可得知是連結到python2.7 若要切換預設執行版本:
    sudo rm /usr/bin/python
    sudo ln -s /usr/bin/python3.5 /usr/bin/python
    切换到3.5版本的python了

    若要再改回來:

    sudo rm /usr/bin/python
    sudo ln -s /usr/bin/python2.7 /usr/bin/python
    切换到python版本2.7了
    進入python編輯畫面,要跳出時,按CTRL+D


二、如何在EV3DEV執行簡單的程式直接操控EV3

  1. 發出聲音:
    $ beep # 440 Hz for 200 ms
    $ beep -f 200 -l 500 # 220 Hz for 500 ms
    $ beep -f 262 -l 180 -d 20 -r 2 \
    -n -f 392 -l 180 -d 20 -r 2 \
    -n -f 440 -l 180 -d 20 -r 2 \
    -n -f 392 -l 380 -d 20 \
    -n -f 349 -l 180 -d 20 -r 2 \
    -n -f 330 -l 180 -d 20 -r 2 \
    -n -f 294 -l 180 -d 20 -r 2 \
    -n -f 262 -l 400 # twinkle twinkle little star
  2. 讓ev3可以直接說話(將輸入的英文字句,以人聲講出來)
    $ espeak "hello, I am an EV3. I like to talk because I am a robot.“ 
    --stdout | aplay
    Playing WAVE 'stdin' : Signed 16 bit Little Endian, Rate 22050 Hz, Mono




三、利用3D印表機,列印出可以plug在樂高積木橫桿上的筆套(Pen holder for EV3 Drawing robot

四、組裝ev3 print bot

  1. 組裝步驟圖:下載處
  2. 組裝完後,將前端固定筆的裝置拆下
  3. 改成3DP列印的筆套
  4. 在windows下,執行pietty,以SSH連線到EV3
  5. 執行以下指令
    git clone https://github.com/cavenel/ev3-print3rbot.git
    cd ev3-print3rbot/
  6. 編輯writer.py,找到以下程式碼。wri.draw_image(image_file = 'images/test.svg')代表程式執行預設是畫出images/test.svg檔
    wri = Writer(calibrate = True)
    wri.draw_image(image_file = 'images/test.svg')

  7. 執行程式讓ev3printbot開始畫圖(列印)
    python3 writer.py

  8. 若要讓EV3畫出不同的圖,首先我們要利用inkscape畫圖,存檔成SVG檔,在windows 下利用inkscape命令列,轉換圖檔:
    "c:\Program Files\Inkscape\inkscape.exe" c:\image.svg --verb=EditSelectAll --verb=ObjectToPath --verb=SelectionUnGroup --verb=FileSave --verb=FileClose --verb=FileQuit
    參數意義:
    --verb=EditSelectAll (選擇全部)
    --verb=ObjectToPath (將物件轉成路徑)
    --verb=SelectionUnGroup (將物件解散群組)
    --verb=FileSave(覆寫存檔)
    --verb=FileClose(關閉)
     --verb=FileQuit(離開)
  9.  將轉換後的image.svg,利用winscp這種sftp軟體,將檔案上傳到EV3,並放在/home/robot/ev3-print3rbot/images
  10. 修改writer.py,將
    wri.draw_image(image_file = 'images/test.svg')
    改為
    wri.draw_image(image_file = 'images/image.svg')
  11. 執行writer.py
    python3 writer.py

Reference:

  1. https://www.ev3dev.org/
  2. Ev3 print3rbot on Github
  3. Робот-художник EV3 Print3rbot

2014年9月4日 星期四

ISG-50中如何將原有的某支分機換號碼

一、Configuration->Extension Management->Authority Group->該分機所屬之群組,然後再將該分機號碼Remove,在Remove前,要先到PBX->Auto Provision,找到所要移除分機碼話機的MAC Address,然後再之抄寫或紀錄下來,等一下新增號碼與話機MAC Address對應時要用到。



二、再按【Add】建立新的號碼

三、到PBX->Auto Provision->找到新增的分機碼,按【Edit】加入該話機的MAc Address

ISG-50如何設定話機群組廣播

Configuration->Paging Group->加入一個群組代碼(這個代碼即是要廣播前,話機所要撥的號碼,這邊以2000為例),然後點選【Edit】後,在Extention Pool中選擇要對其廣播的話機,轉到Selected Pool,這樣下次只要話機先撥2000,就可以對代碼為2000的群組內話機進行擴音廣播。



ISG50如何將通話時間限制在一定時間內

Configuration->Outbound Line Management->LCR
選擇要限制的線路,Edit,Max. Call Time輸入要限制的時間(秒)即可,
但是這邊和傳統電話不一樣是,限制時間到之前不會有提示音,這是要注意的。


ISG-50如何設定分機碼與NGN網路電話做mapping

到【PBX】->【Outbound Line Management】->【Trusted Peer Settings】內的自訂的TANET選擇,點選【Auto Attendant】

按【Add】加入要mapping的號碼,如果已達上限無法加入,就要使用command


以telnet進入ISG-50的console端中,
#enable
#configure terminal
#pbx outbound-trust-peer TANet
#ddi-mapping 907004999_999
#write

這邊是以907004999對應到分機999為示範





ISG-50如何指定某支分機未接時forward到市話或手機

一、【Extension management】->【Authority Group】->【群組名稱】,這裡以AG01為例,進入AG01群組後,選擇要設定forward的分機,這裡以112為例,點選後,按【Edit】


二、在【Mobile Extension】選【Force Enable】,Number打上要Forward的手機號碼,因為本校撥市話或手機要先按前置碼【0】,所以這邊的示範號碼0937999999前的還要加上【0】,設定完後按【OK】,則如果有人撥分機112後,大約3-5秒後,手機也會響。