{"id":725,"date":"2016-12-29T16:59:16","date_gmt":"2016-12-29T07:59:16","guid":{"rendered":"http:\/\/goji2100.s199.coreserver.jp\/blog\/?p=725"},"modified":"2018-11-05T17:50:04","modified_gmt":"2018-11-05T08:50:04","slug":"scratch-board%e3%82%92%e4%bd%9c%e3%82%8b","status":"publish","type":"post","link":"https:\/\/goji2100.com\/blog\/?p=725","title":{"rendered":"Scratch Board\u3092\u4f5c\u308b"},"content":{"rendered":"<p><span style=\"color: #0000ff;\"><strong>2017\/1\/4 \u30b9\u30b1\u30c3\u30c1\u3001\u8a66\u9a13\u30d7\u30ed\u30b0\u30e9\u30e0\u30923.02\u306b\u66f4\u65b0\u3057\u307e\u3057\u305f\u3002<\/strong><\/span><br \/>\n&nbsp;<br \/>\nScratch\u4e0a\u304b\u3089\u8272\u3005\u306a\u30bb\u30f3\u30b5\u30fc\u306e\u60c5\u5831\u3092\u53d6\u8fbc\u3080\u305f\u3081\u306eScratch Board\u304c\u3042\u308a\u307e\u3059\u304c\u3001\u898f\u5b9a\u4ee5\u5916\u306e\u30bb\u30f3\u30b5\u30fc\u3092\u63a5\u7d9a\u3059\u308b\u306e\u306f\u96e3\u3057\u3044\u305f\u3081\u306b\u3001\u975e\u6a19\u6e96\u306e\u30bb\u30f3\u30b5\u30fc\u3092\u63a5\u7d9a\u3067\u304d\u308b\u540c\u7b49\u6a5f\u80fd\u306e\u30dc\u30fc\u30c9\u306e\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n<p>\u65e5\u672c\u3067\u5165\u624b\u53ef\u80fd\u306aScratch Board\u304c\u300c<a href=\"https:\/\/swikis.ddo.jp\/WorldStethoscope\/54\" target=\"_blank\">\u65e5\u672c\u3067\u8cb7\u3048\u308bScratch\u30bb\u30f3\u30b5\u30fc\u30dc\u30fc\u30c9<\/a>\u300d\u3067\u7d39\u4ecb\u3055\u308c\u3066\u3044\u307e\u3059\u3001\u307e\u305f\u300c<a href=\"https:\/\/swikis.ddo.jp\/WorldStethoscope\/uploads\/54\/ScratchBoard_Tech_InfoR2.pdf\" target=\"_blank\">Scratch Board\u306e\u4ed5\u69d8<\/a>\u300d\u306b\u3064\u3044\u3066\u3082\u7d39\u4ecb\u3055\u308c\u3066\u3044\u307e\u3059\u3002<br \/>\n\u3053\u306e\u4e2d\u3067\u300c<a href=\"http:\/\/tiisai.dip.jp\/\" target=\"_blank\">\u3061\u3063\u3061\u3083\u3044\u3082\u306e\u304f\u3089\u3076<\/a>\u300d\u306e\u300c<a href=\"http:\/\/tiisai.dip.jp\/?page_id=935\" target=\"_blank\">NanoBoardAG<\/a>\u300d\u304c\u30d5\u30a1\u30fc\u30e0\u30a6\u30a7\u30a2\u3082\u516c\u958b\u3055\u308c\u3066\u304a\u308a\u6539\u9020\u3067\u304d\u305d\u3046\u3067\u3059\u3001\u307e\u305f\u300c<a href=\"https:\/\/www.switch-science.com\/\">\u30b9\u30a4\u30c3\u30c1\u30b5\u30a4\u30a8\u30f3\u30b9<\/a>\u300d\u306e\u732b\u306e\u5f62\u3067\u53ef\u611b\u3089\u3057\u3044\u300c<a href=\"https:\/\/www.switch-science.com\/catalog\/2700\/\" target=\"_blank\">nekoboard2<\/a>\u300d\u3082\u540c\u69d8\u306b\u516c\u958b\u3055\u308c\u3066\u3044\u307e\u3059\u304c\u3001\u30d5\u30a1\u30fc\u30e0\u30a6\u30a7\u30a2\u306e\u6539\u5909\u306f\u975e\u63a8\u5968\uff08ISP\u7aef\u5b50\u304b\u3089\u66f8\u63db\u3048\u3089\u308c\u308b\uff1f\uff09\u306e\u3088\u3046\u3067\u3059\u3002<br \/>\n\u3069\u3061\u3089\u3082\u5b89\u4fa1\u3067\u3059\u304c\u3001\u73fe\u72b6\u306eMUGBOT\/Fabbot\u306f\u3001\u65e2\u306bRaspberry Pi\u3068Arduino\u3092\u4f7f\u7528\u3057\u3066\u304a\u308a\u3001\u66f4\u306b\u30de\u30a4\u30b3\u30f3\u30dc\u30fc\u30c9\u3092\u8ffd\u52a0\u3057\u3066\u8c6a\u83ef\u306a\u69cb\u6210\u306b\u306a\u308b\u306e\u306f\u907f\u3051\u305f\u3044\u3068\u3053\u308d\u3067\u3059\u3002<br \/>\n\u305d\u306e\u305f\u3081\u306b\u3001\u73fe\u884c\u306eMUGBOT\/Fabbot\u306b\u4f7f\u308f\u308c\u3066\u3044\u308bArduino\u4e0a\u306b\u7d44\u8fbc\u307f\u3001\u8d85\u97f3\u6ce2\u8ddd\u96e2\u30bb\u30f3\u30b5\u30fc\u306e\u8a08\u6e2c\u5024\u3092Scratch\u4e0a\u3067\u8aad\u53d6\u308c\u308b\u3053\u3068\u3092\u76ee\u6a19\u306b\u3057\u307e\u3059\u3002<\/p>\n<p>\u4f7f\u7528\u3059\u308b\u30bb\u30f3\u30b5\u30fc\u306b\u5fdc\u3058\u3066\u30b9\u30b1\u30c3\u30c1\u3092\u5909\u66f4\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u306e\u3067\u3001\u3061\u3087\u3063\u3068\u5909\u308f\u3063\u305f\u30bb\u30f3\u30b5\u30fc\u3092\u4f7f\u7528\u3057\u3066MUGBOT\/Fabbot\u304c\u64cd\u4f5c\u8005\u304b\u3089\u306e\u5fdc\u7b54\u3092\u53d7\u53d6\u308b\u3053\u3068\u304c\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002<br \/>\n\u62bc\u3057\u30dc\u30bf\u30f3\u30b9\u30a4\u30c3\u30c1\u306a\u3069\u3068\u306f\u9055\u3063\u305f\u30bb\u30f3\u30b5\u30fc\u3067\u64cd\u4f5c\u8005\u3068\u5bfe\u8a71\u5f62\u5f0f\u306eScratch\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u4f5c\u308b\u306e\u3082\u697d\u3057\u3044\u3068\u601d\u3044\u307e\u3059\u3002<\/p>\n<p>\u6ce8\u610f\uff09\u7b46\u8005\u306fScratch\u306b\u306f\u7fd2\u719f\u3057\u3066\u3044\u306a\u3044\u305f\u3081\u306b\u3001\u3053\u3053\u3067\u66f8\u304b\u308c\u305f\u65b9\u6cd5\u4ee5\u5916\u306b\u30b9\u30de\u30fc\u30c8\u306a\u65b9\u6cd5\u304c\u3042\u308b\u304b\u3082\u77e5\u308c\u307e\u305b\u3093\u30fb\u30fb<\/p>\n<p><!--more\u3010\u7d9a\u304d\u3092\u8aad\u3080\u3011--><\/p>\n<p><strong>\u63a5\u7d9a\u56f3<\/strong>\uff08\u4eca\u56de\u8ffd\u52a0\u3059\u308b\u30bb\u30f3\u30b5\u30fc\u306e\u63a5\u7d9a\u3060\u3051\u3092\u56f3\u793a\uff09<\/p>\n<div id=\"attachment_784\" style=\"width: 310px\" class=\"wp-caption alignleft\"><a href=\"https:\/\/goji2100.com\/blog\/wp-content\/uploads\/2016\/12\/neko3net.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-784\" class=\"size-medium wp-image-784\" src=\"https:\/\/goji2100.com\/blog\/wp-content\/uploads\/2016\/12\/neko3net-300x285.png\" alt=\"\" width=\"300\" height=\"285\" srcset=\"https:\/\/goji2100.com\/blog\/wp-content\/uploads\/2016\/12\/neko3net-300x285.png 300w, https:\/\/goji2100.com\/blog\/wp-content\/uploads\/2016\/12\/neko3net-768x728.png 768w, https:\/\/goji2100.com\/blog\/wp-content\/uploads\/2016\/12\/neko3net.png 931w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-784\" class=\"wp-caption-text\">\u63a5\u7d9a\u56f3<\/p><\/div>\n<p><br clear=\"left\" \/><strong>Scratch\u30d7\u30ed\u30b0\u30e9\u30e0\u306e\u4f8b\uff1a<\/strong><\/p>\n<div id=\"attachment_785\" style=\"width: 310px\" class=\"wp-caption alignleft\"><a href=\"https:\/\/goji2100.com\/blog\/wp-content\/uploads\/2016\/12\/2016-12-31-7.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-785\" class=\"size-medium wp-image-785\" src=\"https:\/\/goji2100.com\/blog\/wp-content\/uploads\/2016\/12\/2016-12-31-7-300x258.png\" alt=\"Scratch\u306e\u4f8b\" width=\"300\" height=\"258\" srcset=\"https:\/\/goji2100.com\/blog\/wp-content\/uploads\/2016\/12\/2016-12-31-7-300x258.png 300w, https:\/\/goji2100.com\/blog\/wp-content\/uploads\/2016\/12\/2016-12-31-7-768x660.png 768w, https:\/\/goji2100.com\/blog\/wp-content\/uploads\/2016\/12\/2016-12-31-7.png 1016w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-785\" class=\"wp-caption-text\">Scratch\u306e\u4f8b<\/p><\/div>\n<p><br clear=\"left\" \/><strong>\u30b9\u30b1\u30c3\u30c1\uff1a<br \/>\n[mugbot_arduino_2.ino]<\/strong><\/p>\n<pre class=\"lang:arduino decode:true \" title=\"mugbot_arduino_2.xx.ino\">#include &lt;Servo.h&gt;\r\n\r\n\/\/Mugbot Project Tokyo City University Koike Lab. 2016\r\n\/\/Mugbot System ver. 1.1\r\n\r\n\/\/ Goji 2.00 - PicoBoard compatible\r\n#include &lt;SoftwareSerial.h&gt;\r\nSoftwareSerial SSerial(12, 13); \/\/ RX, TX\r\n\/*\r\n *\r\n *\/\r\n\r\n\/\/ Goji 2.00 - PicoBoard compatible\r\n#define neko3_TICK  25\r\nunsigned long cal_millis;\r\n\r\nvoid SS_delay(int n) {\r\n  unsigned long now_millis = millis();\r\n  unsigned long new_millis = now_millis;\r\n\r\n  while ((new_millis + n) &gt; (cal_millis + neko3_TICK)) {\r\n    neko3_loop();\r\n    new_millis = millis();\r\n    if ((new_millis + 10) &gt; (now_millis + n)) break;\r\n  }\r\n  new_millis = millis();\r\n  if ((now_millis + n) &gt; new_millis) delay((now_millis + n) - new_millis);\r\n}\r\n\r\nvoid setup()\r\n{\r\n  \/\/ Goji 2.00 - PicoBoard compatible\r\n  neko3_setup();        \/\/ for neko3    \/\/ for neko3 Setup\r\n  SSerial.begin( 9600); \/\/ for xxxBOT   \/\/ use Software Serial\r\n  \/*\r\n   * \r\n   *\/\r\n}\r\n\r\nvoid loop() {\r\n  \/\/ Goji 2.00 - PicoBoard compatible\r\n  neko3_loop();\r\n\r\n  \/\/ use Software Serial\r\n  if (SSerial.available() &gt; 0) {\r\n    char ch = SSerial.read();\r\n    \/*\r\n     * \r\n     *\/\r\n    SS_delay( 100 );          \/\/ Change all delay() -&gt; SS_delay()\r\n    \/*\r\n     * \r\n     *\/\r\n  }\r\n}\r\n<\/pre>\n<p><strong>[neko3.ino]<\/strong><\/p>\n<pre class=\"lang:arduino decode:true \" title=\"neko3.ino\">\/\/ neko3 - Goji\r\n\/*\r\n   ver 1.00 2016\/12\/26 Alpha version\r\n   ver 2.00 2016\/12\/27 for xxxBOT Arduino\r\n*\/\r\n#define SSENSOR\r\n\r\n#define PORT_A    1   \/\/ Analog port\r\n#define PORT_D    2   \/\/ Digital port\r\n#define PORT_S    4   \/\/ Sensor\r\n\r\n#define MAX_TBL   9\r\n#define PORT_TAB(ch, ad, p0, p1)  ((ch &lt;&lt; 12)|(ad &lt;&lt; 8)|(p0 &lt;&lt; 4)|(p1))\r\n\r\nconst unsigned int resTbl[MAX_TBL] = {\r\n  PORT_TAB(15,      0, 4, 0),  \/\/ Firmware ID = 4\r\n  PORT_TAB( 0, PORT_S, 9, 3),  \/\/ Pulse  (D9), LED(D3) D Left\r\n  PORT_TAB( 1, PORT_S, 10, 5), \/\/ Pulse (D10), LED(D5) C Right\r\n  PORT_TAB( 2, PORT_A, 2, 0),  \/\/ Analog (A2) B\r\n  PORT_TAB( 3, PORT_D, 7, 0),  \/\/ Digital(D7) (0x3FF or 0x000)\r\n  PORT_TAB( 4, PORT_A, 3, 0),  \/\/ Analog (A3) A\r\n  PORT_TAB( 5, PORT_A, 4, 0),  \/\/ Analog (A4) Light\r\n  PORT_TAB( 6, PORT_A, 5, 0),  \/\/ Analog (A5) Mic\r\n#ifdef ARDUINO_AVR_NANO\r\n  PORT_TAB( 7, PORT_A, 6, 0),  \/\/ Analog (A6) Slider for Nano\r\n#else\r\n  PORT_TAB( 7, PORT_A, 4, 0),  \/\/ Analog (A4) Slider\r\n#endif\r\n};\r\n\r\nunsigned int resVal[MAX_TBL] = { 0xF804 };  \/\/ Firmware ID = 4\r\n\r\n#ifdef ARDUINO_AVR_NANO\r\nconst int analogPin[] = { A0, A1, A2, A3, A4, A5, A6, A7 };\r\n#else\r\nconst int analogPin[] = { A0, A1, A2, A3, A4, A5 };\r\n#endif\r\n\r\n#define SS_TABn 1\r\n#define SS_VALs 6\r\nint ss_vals[2][SS_VALs];\r\nint ss_valp = 0;\r\nint neko3_pass = 0;\r\n\r\nint getDistance(int pinNo) {\r\n  pinMode(pinNo, OUTPUT);\r\n  digitalWrite(pinNo, LOW);  delayMicroseconds( 5);\r\n  digitalWrite(pinNo, HIGH); delayMicroseconds(20);\r\n  digitalWrite(pinNo, LOW);\r\n  pinMode(pinNo, INPUT);\r\n  unsigned long dist = pulseIn(pinNo, HIGH, (unsigned long)(40000));\r\n  return (dist \/ 58);\r\n}\r\n\r\nvoid neko3_setup() {\r\n  Serial.begin(38400);\r\n  for (int i = 1; i &lt; MAX_TBL; i++) {\r\n    int portAD = (resTbl[i] &amp; 0x0F00) &gt;&gt; 8;\r\n    int portNo = (resTbl[i] &amp; 0x00F0) &gt;&gt; 4;\r\n    int portSS = (resTbl[i] &amp; 0x000F);\r\n    if (portAD) {\r\n      if (portAD == PORT_A || portAD == PORT_D)\r\n        pinMode(((portAD == PORT_A) ? analogPin[portNo] : portNo), INPUT);\r\n      if (portAD == PORT_D) digitalWrite(portNo, HIGH);\r\n      if (portAD == PORT_S) pinMode(portSS, OUTPUT);\r\n    }\r\n  }\r\n}\r\n\r\nvoid neko3_loop () {\r\n  int n, vals, valw;\r\n\r\n  if ((Serial.available() &gt; 0) &amp;&amp; (Serial.read() == 0x01)) {\r\n    cal_millis = millis();\r\n    for (int i = 0; i &lt; MAX_TBL; i++) {\r\n      Serial.write(resVal[i] &gt;&gt; 8); delay(1);\r\n      Serial.write(resVal[i] &amp; 0xFF);\r\n    }\r\n\r\n    for (int i = 1; i &lt; MAX_TBL; i++) {\r\n      int portAD = (resTbl[i] &amp; 0x0F00) &gt;&gt; 8;\r\n      int portNo = (resTbl[i] &amp; 0x00F0) &gt;&gt; 4;\r\n\r\n      switch (portAD) {\r\n        case PORT_D:\r\n          vals = ((digitalRead(portNo) == 0) ? : (1024 - 1));\r\n          break;\r\n\r\n        case PORT_A:\r\n          vals = (1024 - 1) - analogRead(portNo);\r\n          break;\r\n\r\n        case PORT_S:\r\n          if ((i -  SS_TABn) != neko3_pass) continue;\r\n          vals = getDistance(portNo);\r\n          if ((vals == 0) || (vals &gt; 102)) vals = 102;\r\n\r\n          ss_vals[i - SS_TABn][ss_valp] = vals;\r\n          if ((i - SS_TABn) == 1) if (++ss_valp &gt;= SS_VALs) ss_valp = 0;\r\n\r\n          for (n = 0, valw = 0; n &lt; SS_VALs; valw += ss_vals[i - SS_TABn][n++]);\r\n          vals = valw \/ SS_VALs;\r\n\r\n          analogWrite((resTbl[i]&amp;0x000F), (vals&gt;80)?0:((vals&lt;25)?255:12));\r\n          vals *= 10;\r\n          break;\r\n      }\r\n      resVal[i] = 0x8000|((resTbl[i]&amp;0xF000)&gt;&gt;1)|((vals&amp;0x0380)&lt;&lt;1)|(vals&amp;0x007F);\r\n    }\r\n    if (++neko3_pass &gt; 1) neko3_pass = 0;\r\n  }\r\n}\r\n<\/pre>\n<p><strong>\u52d5\u4f5c\u78ba\u8a8dScratch\u30d7\u30ed\u30b0\u30e9\u30e0\uff1a<\/strong><br \/>\n\uff0aScratch\u306e\u30b3\u30fc\u30c9\u306fMAD(Mugbot Action Designer)\u4e0a\u3067\u52d5\u4f5c\u3057\u307e\u3059\u3002<br \/>\n\uff0aScratch\u306e\u30b3\u30fc\u30c9\u306f\u8a66\u9a13\u7528\u3067\u5b8c\u6210\u5ea6\u306f\u4f4e\u3044\u3067\u3059(\uffe3\u30fc\uffe3; \u30d2\u30e4\u30ea<\/p>\n<p><a href=\"https:\/\/goji2100.com\/blog\/wp-content\/uploads\/2016\/12\/neko3.02.zip\"><br \/>\n<strong>neko3.02<\/strong> \u3053\u3053\u304b\u3089\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/a>.<\/p>\n<p>&nbsp;<\/p>\n<ul>\n<li><strong><a href=\"http:\/\/www.mugbot.com\/\" target=\"_blank\">MUGBOT<\/a><\/strong>\u306f\u6771\u4eac\u90fd\u5e02\u5927\u5b66 \u30e1\u30c7\u30a3\u30a2\u60c5\u5831\u5b66\u90e8\u793e\u4f1a\u30e1\u30c7\u30a3\u30a2\u5b66\u79d1 \u5c0f\u6c60\u60c5\u5831\u30c7\u30b6\u30a4\u30f3\u7814\u7a76\u5ba4\u3067\u4f5c\u3089\u308c\u305f\u30bd\u30fc\u30b7\u30e3\u30eb\u30ed\u30dc\u30c3\u30c8\u3067\u3059\u3002<\/li>\n<li><strong><a href=\"https:\/\/fabble.cc\/nkgw\/fabbot\" target=\"_blank\">Fabbot<\/a><\/strong>\u306f<strong>MUGBOT<\/strong>\u3092\u30d9\u30fc\u30b9\u306b\u30d5\u30a1\u30d6\u30e9\u30dc\u95a2\u5185\u3067\u4f5c\u3089\u308c\u305f\u7c21\u5358\u30ed\u30dc\u30c3\u30c8\u30ad\u30c3\u30c8\u3067\u3059\u3002<\/li>\n<li><strong><a href=\"https:\/\/github.com\/gakuchan\/MugbotActionDesigner\/releases\" target=\"_blank\">MAD(Mugbot Action Designer)<\/a><\/strong>\u306f\u3001<strong>MUGBOT<\/strong>\u3092\u5236\u5fa1\u3067\u304d\u308b\u3088\u3046\u306b\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u3055\u308c\u305fScratch\u3067\u3059\u3002<br \/>\n<strong>MAD<\/strong>\u306f\u5c71\u68a8\u82f1\u548c\u5927\u5b66\u306e\u6749\u6d66\u5b66\u5148\u751f\u306e\u8457\u4f5c\u7269\u3067\u3059\u3002<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>2017\/1\/4 \u30b9\u30b1\u30c3\u30c1\u3001\u8a66\u9a13\u30d7\u30ed\u30b0\u30e9\u30e0\u30923.02\u306b\u66f4\u65b0\u3057\u307e\u3057\u305f\u3002 &nbsp; Scratch\u4e0a\u304b\u3089\u8272\u3005\u306a\u30bb\u30f3\u30b5\u30fc\u306e\u60c5\u5831\u3092\u53d6\u8fbc\u3080\u305f\u3081\u306eScratch Board\u304c\u3042\u308a\u307e\u3059\u304c\u3001\u898f\u5b9a\u4ee5\u5916\u306e\u30bb\u30f3\u30b5\u30fc\u3092\u63a5\u7d9a\u3059\u308b\u306e\u306f\u96e3\u3057\u3044\u305f\u3081 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[35],"tags":[36],"_links":{"self":[{"href":"https:\/\/goji2100.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/725"}],"collection":[{"href":"https:\/\/goji2100.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/goji2100.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/goji2100.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/goji2100.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=725"}],"version-history":[{"count":46,"href":"https:\/\/goji2100.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/725\/revisions"}],"predecessor-version":[{"id":1130,"href":"https:\/\/goji2100.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/725\/revisions\/1130"}],"wp:attachment":[{"href":"https:\/\/goji2100.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=725"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/goji2100.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=725"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/goji2100.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=725"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}